小编jun*_*Dev的帖子

在WHERE条款的情况下的"IN"状态?

我的情况很复杂.我想在"where子句"上写一个包含"case when"条件的sql查询.

就像那样:

SELECT *
FROM <table>
WHERE
<Column1> in
   CASE <Column2>
      WHEN 1 THEN ('OP', 'CL') 
      WHEN 0 THEN ('RE', 'ST')
END
Run Code Online (Sandbox Code Playgroud)

Column1必须为"in",而不是"=".因为Column1的条件有多个值.该查询返回"',''附近的语法不正确." 错误.

你能给我任何建议吗?(对不起,我的英语不好.)

编辑:我想我误解了.如果Column2为1,则条件必须类似于"IN('OP','CL')"否则Column1为2,条件必须类似"IN('RE','ST')".

sql t-sql where-clause case-when

4
推荐指数
1
解决办法
848
查看次数

T-SQL 中的子网(或 CIDR)IP 控制

我不知道如何准确解释,但是在选择和比较查询IP子网时存在问题。例如,有一个 IP 地址列表,我有另一个 CIDR/子网掩码列表(XXX0/24 等)。如何通过 T-SQL 了解第一个列表中的每个 IP 地址都在 CIDR/子网掩码列表中?

例如:

IP:172.28.112.23 -> 假

IP:172.28.111.33 -> 真

IP 列表输出:

IP列表

子网输出:

在此处输入图片说明

t-sql ip-address subnet cidr

4
推荐指数
1
解决办法
3955
查看次数

标签 统计

t-sql ×2

case-when ×1

cidr ×1

ip-address ×1

sql ×1

subnet ×1

where-clause ×1