一个sql语句,查询两个字段

fantasykakaxi 2017-05-17 01:19:11
如果其中一个为空
执行一条语句
如果二者都不为空
执行一条语句

怎么判断这两个字段是否为空啊 sql不会写
...全文
833 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 11 楼 woainixinxin521 的回复:
难道你就不可以SELECT XX FROM TABLE WHERE XX IS NOT NULL 如果是NULL自然就查不到了啊
得 我用笨办法吧 用datatable转吧
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 11 楼 woainixinxin521 的回复:
难道你就不可以SELECT XX FROM TABLE WHERE XX IS NOT NULL 如果是NULL自然就查不到了啊
我倒也想这样 关键是 空 也要判断 dbhelper出来的object转不成bool
打老虎zz 2017-05-17
  • 打赏
  • 举报
回复
难道你就不可以SELECT XX FROM TABLE WHERE XX IS NOT NULL 如果是NULL自然就查不到了啊
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 9 楼 woainixinxin521 的回复:
[quote=引用 8 楼 fantasykakaxi 的回复:] [quote=引用 6 楼 woainixinxin521 的回复:] [quote=引用 4 楼 fantasykakaxi 的回复:] [quote=引用 2 楼 woainixinxin521 的回复:] IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
看看三楼吧 [/quote] 查询到的值 给变量 做判断[/quote] 这些都懂 只是写出来的时候 有的是空值 不好转换[/quote] 其实我一直当你在存储过程中做操作了。。。 select case when a is null then 1 else 0 end from aaa 你类似这样做处理就好了[/quote] 说到底 还是sql掌握的不好 不行 你这样我试过 也不行 plsql里面查询结果 就没这一行
打老虎zz 2017-05-17
  • 打赏
  • 举报
回复
引用 8 楼 fantasykakaxi 的回复:
[quote=引用 6 楼 woainixinxin521 的回复:] [quote=引用 4 楼 fantasykakaxi 的回复:] [quote=引用 2 楼 woainixinxin521 的回复:] IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
看看三楼吧 [/quote] 查询到的值 给变量 做判断[/quote] 这些都懂 只是写出来的时候 有的是空值 不好转换[/quote] 其实我一直当你在存储过程中做操作了。。。 select case when a is null then 1 else 0 end from aaa 你类似这样做处理就好了
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 6 楼 woainixinxin521 的回复:
[quote=引用 4 楼 fantasykakaxi 的回复:] [quote=引用 2 楼 woainixinxin521 的回复:] IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
看看三楼吧 [/quote] 查询到的值 给变量 做判断[/quote] 这些都懂 只是写出来的时候 有的是空值 不好转换
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 5 楼 hanjun0612 的回复:
那就 if(target!=""&&no!="") ....messagebox.show else .....存储语句
引用 3 楼 fantasykakaxi 的回复:
就要messagebox.show
sql里查出来 经过dbhelper处理 之后 targetg跟no为空的时候 报错 未找到引用的实例 那该怎么转换 我想用nvl(taeget,'') 这样不对啊
打老虎zz 2017-05-17
  • 打赏
  • 举报
回复
引用 4 楼 fantasykakaxi 的回复:
[quote=引用 2 楼 woainixinxin521 的回复:] IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
看看三楼吧 [/quote] 查询到的值 给变量 做判断
正怒月神 2017-05-17
  • 打赏
  • 举报
回复
那就 if(target!=""&&no!="") ....messagebox.show else .....存储语句
引用 3 楼 fantasykakaxi 的回复:
就要messagebox.show
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 2 楼 woainixinxin521 的回复:
IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
看看三楼吧
fantasykakaxi 2017-05-17
  • 打赏
  • 举报
回复
引用 1 楼 hanjun0612 的回复:
string condition1="条件1"; string condition2="条件2"; string sql="select * from table where 1=1 " if(condition1!="") sql+= " and 字段1="+condition1; if(condition2!="") sql+= " and 字段2="+condition2;
可能您理解错了 我上我的sql吧

select target,no from task t where no='" + grv_CntrPlanDetail.GetDataRow(i)["NO"].ToString() + "' and code='LT' and isfinished='N'"
我想查出来之后 target跟no 两者若有一个为空 则执行存储语句 target跟no 两者都不为空的时候 就要messagebox.show
打老虎zz 2017-05-17
  • 打赏
  • 举报
回复
IF ((XXX IS NOT NULL AND LEN(XXX) >= 1) AND XXX IS NOT NULL AND LEN(XXX) >= 1) ELSE
正怒月神 2017-05-17
  • 打赏
  • 举报
回复
string condition1="条件1"; string condition2="条件2"; string sql="select * from table where 1=1 " if(condition1!="") sql+= " and 字段1="+condition1; if(condition2!="") sql+= " and 字段2="+condition2;

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧