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

Hvordan tæller man elementer ved hjælp af gener_series()-ækvivalent i MySQL?

Så lad os antage, at du har nogle tabel med mindst 26 poster i den (måske information_schema.columns måske?).

Følgende vil generere alle store alfabetiske bogstaver:

SET @c := 64;

SELECT CAST(CHAR(@c := @c + 1) AS CHAR(1)) AS letter
FROM table_with_at_least_26_rows
LIMIT 26
;

For at integrere ovenstående i din oprindelige forespørgsel skal du sætte SET @c := 64; før forespørgslen, erstat derefter generate_series(0, 25) as chars(letter) med ( SELECT CAST ... LIMIT 26 ) chars . Sørg for at inkludere parenteserne, da det vil gøre forespørgslen til en underforespørgsel.

SQL Fiddle for forespørgslen:http://sqlfiddle.com/#!9/6efac/8



  1. Laravel-opdateringEllerOpret med automatisk inkrementel database

  2. hent 3 rækker hver dag, hvis du planlægger for 1 år

  3. MySQL (eller PHP?) grupperer resultater efter feltdata

  4. Få den distinkte sum af en sammenføjet tabelkolonne