sql >> Databáze >  >> RDS >> Mysql

Extrahujte hledaný řetězec v kontextu

Zde je SQL, který potřebujete:

SELECT
    id,
    title,
    substring(body,  
        case
             when locate('mysql', lower(body)) <= 20 then 1
             else locate('mysql', lower(body)) - 20
        end,
        case
            when locate('mysql', lower(body)) + 20 > length(body) then length(body)
            else locate('mysql', lower(body)) + 20
        end)
FROM content
WHERE lower(body) LIKE '%mysql%'
    OR title LIKE '%mysql%'
limit 8;

FYI:Testováno a funguje.



  1. MariaDB JSON_MERGE_PATCH() Vysvětleno

  2. Jak zkontrolovat (nebo dokonce nastavit) řazení v souboru mdb (ms access)?

  3. Je v MySQL dostupný příkaz merge

  4. PHP &MySQL:Jak mohu použít SET @rank=0; v $query=