Forum Webscript.Ru

Общие => Базы данных => Тема начата: glebushka от 30 Января 2005, 03:56:59

Название: не могу составить запрос:(
Отправлено: glebushka от 30 Января 2005, 03:56:59
Есть таблица:
CREATE TABLE my_table(
id MEDIUMINT(7) UNSIGNED,
property MEDIUMINT(7) UNSIGNED,
value MEDIUMINT(7) UNSIGNED
)
id - неуникальны и в таблице несколько записей с одним и тем же id. Например:
id         property         value
1          7                   2
1          12                 5
2          7                   2
2          12                 6

Необходимо выбрать все id для которых (property=7 AND value=2) и (property=12 AND value=5)

Т.е. в вышепреведённом примере результатом запроса должен быть id=1 (в общем случае долежен возвращаться список значений). Вот сижу уже час не могу сообразить как написать такой запрос:(
Название: не могу составить запрос:(
Отправлено: Макс от 30 Января 2005, 13:42:49
попробуй так :

SELECT id, COUNT(id) as summ
FROM my_yable
WHERE
        (property=7 AND value=2) OR
        (property=12 AND value=5)
GROUP BY id
HAVING summ = 2;
Название: не могу составить запрос:(
Отправлено: glebushka от 30 Января 2005, 14:24:36
Макс, сенкс. То что доктор прописал!:)