匹配所有列具有相同的值

时间:2017-06-07 20:48:43

标签: sql sql-server

我的数据集如下:

Col1 | COl2  | Col3
--------------------
A    | Jan-1 |   1
-------------------
A    | Jan-2 |   2
-------------------
A    | Jan-3 |   2
-------------------
A    | Jan-4 |   3
-------------------
B    | Jan-1 |   1
-------------------
B    | Jan-2 |   1
-------------------
B    | Jan-3 |   1
-------------------
B    | Jan-4 |   1
-------------------

我想选择在Col2中可用的整个日期范围内具有相同Col3值的所有Col1实体。

你能帮助我吗?感谢。

2 个答案:

答案 0 :(得分:0)

您可以测试一个简单col3col1查询的给定group by值的所有having值是否相同:

select col1
from t
group by col1
having min(col3) = max(col3);

我不知道col2与问题的关系。

答案 1 :(得分:0)

我为此写了一个SP ......例如

CREATE PROC your_procedure
@param1
@param2
@param3

AS
BEGIN

SELECT * FROM your_table WHERE Col1 = @param1 AND Col2 = @param2 AND Col3 = @param3


END