Доброго времени суток. Возникла такая проблема, пишу систему проведения опросов, и появилась необходимость сделать запрос на выборку статистики по ответам: Есть таблица: votes Структура и пример заполнения: id id_vote id_poll id_question id_answer 1 1 23 1 129 2 1 23 2 130 3 1 23 2 131 4 1 23 3 134 5 1 23 4 137 6 2 23 1 127 7 2 23 2 131 8 2 23 2 132 9 2 23 3 135 10 2 23 4 137 11 3 23 1 127 ... ... ... ... ... Как выбрать id_vote где id_answer: WHERE votes.id_answer = 137 AND (votes.id_answer = 127 OR votes.id_answer = 134) Вообще офигел когда такая задача стала((( Ну думал уже смогу сделать все что моей душе угодно, ага, не тут то было. Возможно я не много неправильно тему назвал, не знал как еще написать. Пожалуйста! Помогите, не знаю уже что делать или точнее как запрос писать... P.S.: все мое выравнивание таблицы форум убил(( Тут вот видна хорошо структура таблицы: http://www.sql.ru/forum/actualthread.aspx?tid=802816
тут наверное не И, а ИЛИ. [sql]SELECT DISTINCT `votes`.`id_vote` FROM `votes` WHERE `votes`.`id_answer` IN ('137', '127', '134')[/sql]
[sql]select distinct v1.id_vote from votes as v1 join votes as v2 on v1.id_vote=v2.id_vote and v1.id<>v2.id where v1.id_answer=137 and (v2.id_answer=127 or v2.id_answer=134)[/sql]
Volt спасибо, интересное решение и грамотный ответ! Я доходил до решения с помощью JOIN'ов с использованием USING(id_vote), но работало не правильно...