Двойное сравнение SQL - PullRequest
       18

Двойное сравнение SQL

2 голосов
/ 10 апреля 2011

допустим, у меня есть следующий столбец SQL:

SQL table

Теперь я хочу сделать следующее: В col_1 у меня есть значение 'one'.Если я проверю, какие соответствующие значения я получу в col_2, я получу за это, я найду 'два' и 'три'.Таким образом, результаты будут «два» и «три».Но из этого набора результатов я хочу иметь только те, которые, используемые в col_1, имеют в col_2 соответствующее значение 'one'.Итак: 'two' в col_1, имеет , имеет 'one' в col_2, а три - нет.Итак, из результирующего набора {'two', 'three'} останется только {'two'}.

Как я могу выполнить такой запрос двойной проверки с MySQL?

Заранее спасибо!

1 Ответ

5 голосов
/ 10 апреля 2011

Это делается путем JOIN подбора таблицы к себе с заданным условием. Предполагая, что ваше имя таблицы table:

SELECT t1.col_1
FROM table t1 JOIN table t2 ON t1.col_2=t2.col_1
WHERE t1.col_1=t2.col_2 
AND t1.col_1='one';

Это дает:

 col_1 
-------
 one
(1 row)
...