Autor | Zpráva | ||
---|---|---|---|
lukisek Profil * |
#1 · Zasláno: 14. 8. 2014, 07:36:18
Ahoj,
potřeboval bych poradit, mam tabulku student a druhou tabulku dobrovolné předměty. V tabulce dobrovolne předměty je id uživatele a id předmětu... jak mam udělat dotaz aby mi vypsal všechny studenty, kteří nemají žádný předmět...diky za radu... |
||
Alphard Profil |
#2 · Zasláno: 14. 8. 2014, 07:54:25
select * from A left join B on A.id = B.id where B.id is null |
||
Chuchycek Profil |
SELECT student.student_id, COUNT(dobrovolne_predmety.student_id) as pocet
FROM student LEFT JOIN dobrovolne_predmety ON student.student_id=dobrovolne_predmety.student_id WHERE dobrovolne_predmety.student_id IS NULL |
||
juriad Profil |
#4 · Zasláno: 14. 8. 2014, 08:10:48
Případně takto:
SELECT * FROM student s WHERE s.id NOT IN (SELECT dp.student FROM dobrovolne_predmety dp) |
||
Kajman Profil |
#5 · Zasláno: 15. 8. 2014, 12:31:14
Jen pro přehlednost doplním obě varianty, kdy výpis omezuje jen na nějaký školní rok.
SELECT s.* FROM student s LEFT JOIN dobrovolne d ON s.id = d.id_uzivatele AND d.skolnirok = 2014 WHERE d.id_uzivatele IS NULL SELECT s.* FROM student s WHERE s.id NOT IN (SELECT DISTINCT d.id_uzivatele FROM dobrovolne d WHERE d.skolnirok = 2014 ) |
||
Časová prodleva: 10 let
|
0