sql >> Databasteknik >  >> RDS >> Mysql

MySQL:Är det möjligt att "fylla" en SELECT med värden utan en tabell?

Om det alls är möjligt, försök att hålla dig borta från att generera data i farten. Det gör mycket enkla frågor löjligt komplicerade, men framför allt:det förvirrar optimeraren utan slut.

Om du behöver en serie heltal, använd en statisk tabell med heltal. Om du behöver en serie datum, månader eller vad som helst, använd en kalendertabell. Om du inte har att göra med några verkligt extraordinära krav, är en statisk tabell rätt väg att gå.

Jag gav ett exempel på hur man skapar en tabell med siffror och en minimal kalendertabell (endast datum) i det här svaret .

Om du har dessa tabeller på plats blir det enkelt att lösa din fråga.

  1. Aggregera beställningsdata till MONTH.
  2. Höger anslut till tabellen över månader (eller skilj MÅNAD från tabellen över datum)


  1. Varför skapar Hibernate inte en databas för MySQL?

  2. Mysql:Trimma alla fält i databasen

  3. MySQL Group By och Summa totalt värde för annan kolumn

  4. Hur man använder förberedda satser i frågor med en IN-sats i PHP