oracle sql语句的问题

zzyhost 2016-04-18 05:27:57
以这句为例,select * from 班级 where 学号=变量;
我的问题是如果学号=0时,就相当于没有这个条件(就where 1=1,就查全班所有人),明白吗,sql 咋写呢?
...全文
60 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
大鱼> 2016-04-18
  • 打赏
  • 举报
回复
不知道楼主你想怎么使用,如果仅仅学号作为一个查询条件一楼的写法没毛病。
RubenLuLu 2016-04-18
  • 打赏
  • 举报
回复
select * from 班级 where 学号=变量; select * from 班级 where ( select count(1) from 班级 where 学号=变量; ) == 0 or 学号=变量 //两个条件永远只能满足其一。 当满足第一个 count结果为0的时候 查到所有数据。 第二个条件的结果为空,只有第一个条件的数据显示 满足第二个条件时,第一个条件结果为空。结果只有第二个条件的数据显示 。 当然这是理想代码,我本地没有安装数据库 所以没有进行测试。
RubenLuLu 2016-04-18
  • 打赏
  • 举报
回复
引用 1 楼 xiaoguidangjiajia 的回复:
string sql="select * from 班级 where 1=1"; if(学号!=0) { sql+=" and 学号 = ‘"+学号+“’”; }
我没有看错的话,楼主的意思是 sql 咋写呢?。。如果你贴个存储过程还好点把,直接上if是不是。。。。还是先看清楚题目把
小鬼当家家 2016-04-18
  • 打赏
  • 举报
回复
string sql="select * from 班级 where 1=1"; if(学号!=0) { sql+=" and 学号 = ‘"+学号+“’”; }

110,538

社区成员

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

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

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