Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann ich eines von vielen möglichen Mustern in einem einzelnen mySQL-Eintrag finden? Mehr drin

mehrere Optionen hier...

1) Speichern Sie die Noten als ganze Zahl, wobei jede Note einem Bit entspricht. Klasse 1 =Bit 0, Klasse 2 =Bit 1, Klasse 3 =Bit 2 und so weiter. dann würden die Noten 1,2,3 0x00000111 (8) entsprechen und die Noten 2,4 0x00001010 (10) usw.; dann wird die Abfrage zu einer einfachen Angelegenheit eines UND-Vergleichs ... wenn Sie alle Zeilen haben möchten, in denen die Noten 2 und 4 ausgewählt sind (und möglicherweise andere), dann wählen Sie * aus Dateien, in denen (Noten &10) ==wahr

2) Wenn es nur relativ wenige Noten gibt, könnten Sie jede als boolesche Spalte speichern.

3) Speichern Sie die Noten in einer separaten Tabelle und dann die Beziehung zwischen Noten und Dateien in einer dritten Join-Tabelle (da es sich um eine Viele-zu-Viele-Beziehung handelt).