【发布时间】:2016-05-01 04:13:35
【问题描述】:
表结构
|id |location|sub-location|
--------------------------
|1| 70 |115|
|2| 70 |NULL|
|3| 70 |NULL|
问题:
- 如果位置为 70,子位置为 115。查询应返回 id = 1
- 如果子位置不等于 115(任何其他子位置),查询应返回 ids 2 和 3。
- 子位置将作为参数出现,如果存在则返回那些特定的行,否则只有子位置中包含 null 的行
我正在使用以下查询
Select id, location, sub-location
From table1 Where location = @location and (sub-location is null or sub-location = @sub-location)
如果位置为 70 且子位置为 115,则返回 id =1。对于子位置的其他值 查询将不返回任何不应该出现的行。如果查询中传入的子位置不存在,则查询应返回与子位置为空的位置匹配的所有行
【问题讨论】:
-
那么你的问题是什么你想检索什么
-
@Sathish 解释了现有查询的问题。
标签: sql sql-server sql-server-2008