sql >> Databasteknik >  >> RDS >> Mysql

Hur man effektivt designar MySQL-databas för mitt specifika fall

Du har ett relationsschema så här:

Det finns två sätt att lösa detta. Den första, den "rena" är att bygga din "gilla"-tabell och göra "count(*)'s" på lämplig kolumn.

Den andra skulle vara att lagra en räknare i varje kommentar som anger hur många upp och ner som har varit där. Om du vill kontrollera, om en specifik användare har röstat på kommentaren, behöver du bara markera en post, vilket du kan hantera enkelt som en egen fråga och slå samman dem två utanför din databas (för detta använd en fråga som resulterar i comment_id och typ av röst som användaren har gjort i en specifik tråd.)

Ditt tillvägagångssätt med en kommaseparerad lista är inte riktigt prestanda, eftersom du inte kan analysera den utan högre intelligens eller en enorm mängd analyssträngar. Om du har en databas - använd den!

("En information - en datauppsättning"!)



  1. Hämta rader grupperade efter timme med MySQL

  2. JFreechart-diagram med tid från SQL-databas

  3. MySQL-design med dynamiskt antal fält

  4. SQL-frågans parameternamn måste definieras