W tabeli sonda_glosowanie mam odpowiedzi dla różnych ankiet. W przypadku, jeżeli mam dla danej sondy o id=1 trzy możliwe odpowiedzi, a w bazie sonda_glosowanie są głosy tylko dla dwóch różnych odpowiedzi moje zapytanie kuleje i wyświetla mi tylko wynik ilości głosów dla dwóch odpowiedzi pomijając tą trzecią - no przecież nie może się domyśleć, że jest jeszcze opcja na którą nikt jeszcze nie zagłosował.
I teraz moje pytanie, w jaki sposób pobrać wyniki, żeby móc stwierdzić, że jest jeszcze odpowiedź, na którą nie ma głosów.
Dodatkowe objaśnienie na przykładzie poniżej.
Moje zapytanie:
SEL ECT COUNT(*) AS ile FR OM 'sonda_glosowanie' WHERE sonda_id='$sonda_id' ORDER BY odp_id DE SC
Struktura bazy:
ID | SONDA_ID | ODP_ID
Zawartość bazy:
ID | SONDA_ID | ODP_ID
1 | 1 | 2
2 | 1 | 3
3 | 1 | 2
4 | 1 | 2
5 | 1 | 3
Jak widać w zawartości bazy wszystkie głosy dotyczą sondy o id 1. Pojawiają się głosy o id 2 oraz 3, nie ma natomiast głosu o id = 1. Jeżeli odpytuję bazę powyższym zapytaniem otrzymam wynik: 3 , 2. Analogicznie 3 głosy dla odp_id=2 i dwa głosy dla odp_id=3. Nie ma głosów dla odp_id=1 i tutaj chciałbym, aby zapytanie wiedziało że jest jeszcze odp_id=3 które nie ma głosów. Pytanie - jak to zrobić? pomysły? Chyba utknąłem w martwym punkcie.