想象一下,我有一个这样的专栏:
Var: 1, 1, , 3, 2
-
Name: Ben, John, Josh, Bill
如何选择具有相同VAR
列值的条目?比如,如果我想在1
列中输入值为VAR
的条目,它会给我Ben
和Josh
。
答案 0 :(得分:0)
尝试
SELECT name
FROM table1
WHERE var IN (SELECT MIN(var)
FROM table1
GROUP BY var
HAVING COUNT(*) > 1)
这是 SQLFiddle 演示。
答案 1 :(得分:0)
这将为您提供具有相同VAR
的多个记录的记录。
SELECT a.*
FROM TableName a
WHERE EXISTS
(
SELECT 1
FROM TableName b
WHERE a.Var = b.Var
GROUP BY Var
HAVING COUNT(*) > 1
)
解决此问题的另一种方法是使用JOIN
,
SELECT a.*
FROM TableName a
INNER JOIN
(
SELECT Var
FROM TableName b
GROUP BY Var
HAVING COUNT(*) > 1
) b ON a.Var = b.Var
但是当你添加这一行时会增加一些混乱:“..如果我想在VAR列中输入值为1的条目,它会给我:Ben和Josh” - 你想要吗?是否指定VAR
? Like this demo <<
答案 2 :(得分:0)
这个问题令人困惑,选择不起作用吗?
select name from theTable
where var = 1