Autor Zpráva
pojistovak
Profil
Dobrý den, mám tabulku s těmito sloupci:

id | catid | hodnota |

která má řádky třeba takto:

id | catid | hodnota |
2 | 9 | test
2 | 10 | doba
3 | 5 | jina hodnota
4 | 5 | doba

a potřebuju aby mi dotaz vybral jen to id, ktere ma hodnotu dle seznamu.
například:
hodnoty jsou test, doba tak mi to vybere id 2
hodnota je doba, vybere to id 2 a 4

snad jsem to popsal aspoň trošku srozumitelně.
Alphard
Profil
select id from tabulka where hodnota in ('test', 'doba')
pojistovak
Profil
To jsem zkoušel a vybralo mi to 2, 2, 4

ty dvě dvojky mi nevadí, to si ošetřím, ale potřebuju aby to vybralo to id, které má obě ty hodnoty a jen tyto hodnoty.

V tomto případě je ideální výsledek 2, méně ideální ale stále použitelný 2, 2
Kcko
Profil
select id, COUNT(1) pocet from tabulka where hodnota in ('test', 'doba')
GROUP BY id
HAVING pocet = 2
pojistovak
Profil
Super, díky moc, funguje to.
Toto téma je uzamčeno. Odpověď nelze zaslat.