Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL server中查找具有相同Id的多个记录_Sql_Sql Server - Fatal编程技术网

在SQL server中查找具有相同Id的多个记录

在SQL server中查找具有相同Id的多个记录,sql,sql-server,Sql,Sql Server,在SQL server中查找具有相同Id的多个记录 我的表中有以下值 PK Id Value1 Value2 1 1 5 10 2 1 10 10 3 2 5 20 4 3 20 25 5 3 5 5 6 4 10 10 7 1 5 20 8 4 5 10 9 2 25 30 10 5 25

在SQL server中查找具有相同Id的多个记录

我的表中有以下值

PK  Id  Value1  Value2
1   1     5      10
2   1     10     10
3   2     5      20
4   3     20     25
5   3     5      5
6   4     10     10
7   1     5      20
8   4     5      10
9   2     25     30
10  5     25     30
11  5     5      20
12  5     5      5
我想得到“Id”列,它有两条记录,其中一些值是(第一条记录)Value1=5,Value2=20和(第二条记录)Value1=25,Value2=30

在上表中,我的预期结果是

PIds    Id  Value1  Value2
3       2     5      20
9       2     25     30
10      5     25     30
11      5     5      20 
提前谢谢

请尝试:

select * from YourTable
where 
    (Value1=5 and Value2=20) OR 
    (Value1 =25 and Value2 = 30)

所有其他查询显示1、2和5个ID

我找到了这个问题的答案

select T1.Id,* from TestData T1 inner join TestData T2
on T1.Id = T2.Id
where 
    (T2.Value1=5 and T2.Value2=20) and
    (T1.Value1=25 and T1.Value2 = 30)

这是正确的答案,但在我的情况下,记录可以是1,2或3。我无法理解你。请解释。我已经添加了我想要的结果集。您的查询将显示1条Id记录,因为条件或此表中的o/p应该是什么?请解释您试图执行的操作。这里的一般情况是什么?为什么@techdo的答案不适合你。