SQL server where if or 条件判断

本文介绍了一种使用SQL查询特定条件下从两个不同父ID中选择一组数据的方法,并提供了具体实现方式,包括使用IF和CASE语句来简化查询逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

select fno,fname,remark1
from t_base where fparentid='159' or  fparentid='169'

order by cast(remark1 as int)asc

得到的结果为两组数据同时显示,想要达到某种条件下显示其中一个

网上较好方法为

  1. WHERE IF(  `parentID` =1,  `plan_id` <10,  `plan_id` >500 )   
  2. 说明:WHERE  IF(条件,  true执行条件, false执行条件 )

或用case when then else end

另外我想到一个好的方法

where (XXX='1' and fparentid='159') or (XXX='2' and fparentid='169')

这样只会执行其中一句显示结果


自身情况相结合为(传参plant)

select fno,fname,remark1
from t_base where (${plant}='1' and fparentid='159') or (${plant}='2' and fparentid='169')

order by cast(remark1 as int)asc


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值