sql >> Database teknologi >  >> RDS >> Mysql

Hvordan vælger jeg efter en række starttegn?

Hurtigere end Regular expressions og SUBSTRING() funktionskald. Dette vil bruge indekset for symbolName :

WHERE symbolName >= 'A' 
  AND symbolName < 'G'

Der er dog et problem med følsomheden af ​​store og små bogstaver. Vil du have navne som starter med a..f også eller ej?

Hvis du kun vil have navne, der starter med store bogstaver, og tabellen har utf8 tegnsæt, brug:

WHERE symbolName >= 'A' COLLATE utf8_bin
  AND symbolName < 'G' COLLATE utf8_bin

For andre tegnsæt skal du bruge den tilsvarende _bin sortering.



  1. Migrationsfejl i django 2; AttributeError:'str'-objekt har ingen attribut 'decode'

  2. Sådan får du hver Nth Row i MySQL

  3. TO_DSINTERVAL() Funktion i Oracle

  4. Udskrivning til skærm i .sql-fil postgres