|
Тема |
Re: Какво разбираш под "универсална"? [re: Schultz] |
|
Автор | BullDog (Нерегистриран) | |
Публикувано | 20.09.05 23:36 |
|
|
Добре, бе, щом те интересуват, сложим им и един "in":
SELECT е.employee_id, е.name
FROM employee AS e INNER JOIN employee_skill AS es
ON е.employee_id=es.employee_id
WHERE es.skill_id in (1,2,5)
GROUP BY e.employee_id, e.name
HAVING COUNT(*)=3;
Пак ти казвам, че твоята заявка е ОК, просто таблицата skill не ти трябва. щото ти цитираш езиците по ID, което го има и в employee_skill. Виж, ако искаше да цитираш езиците по имена, тогава щеше да ти потрябва и тя, за да ти даде релацията (id на език, име на език).
Ама наистина, какво разбираш под "универсална"? Какво не ти харесва?
На тази заявка досадното и е, че трябва хем да генерираш IN - листа, хем да броиш колко елемента има в него за да ги стравняваш с COUNT(*).
BTW, ако използваш count(*)>= някакво друго число, по малко от броя на item-ите в in листа, става заявката : " ... които знаят поне еди колко си от изброените езици (примерно два от три)."
|
| |
|
|
|