Voglio progettare Database che funzioni come spiegato di seguito.
- Abbiamo alcuni membri e sono elencati in molte categorie.
-
Tra i membri, alcuni hanno privilegi speciali.
-
Abbiamo una tabella meme
-
Abbiamo una tabella delle categorie
-
Relazione della categoria membro mantenuta nella tabella separata
- Relazione privilegio tra utenti mantenuta nella tabella separata
Ora vogliamo recuperare membri per la categoria specifica, questo può essere ottenuto accedendo alla tabella Categorie di membri , ma nel mio caso voglio anche conoscere il privilegio, per ottenere una cosa che posso fare è
Confronta Il risultato (risultato della ricerca- categoria-membro) con la tabella dei privilegi dei membri e Verifica se il Membro ha o meno il privilegio.
Questo sembra essere OK in generale, ma in questo caso, vogliamo assicurarci che i Membri che hanno privilegi debbano essere inclusi in tutti i risultati, se "Categoria" è collegata al Membro con privilegi.
CASO: 1 Quando faccio una ricerca per membri in una categoria con un limite, ottengo tutti i membri e quindi posso confrontarmi con la tabella Privilege. Questo va bene Caso 2: quando chiedo i membri della categoria con LIMIT, potrei perdere alcuni dei membri che hanno privilegi a causa del limite (come LIMIT 10 .. ecc.) in tal caso non otterrò tutti i membri privilegiati
Come progettare il database in modo da ottenere sempre i membri privilegiati dai quozienti del database rispetto alla categoria