sql 中的if 判断 语句应该怎么写?
我要从数据库中查询几个字段,当DATEFROM输入时,在where条件中加入“ANDUNYO_YMD>=:DATEFROM”,当DATETO输入时在where条件中加入“...
我要从数据库中查询几个字段,当DATEFROM 输入时,在where 条件中加入 “AND UNYO_YMD >= :DATEFROM ”,当DATETO 输入时在where 条件中加入 “AND UNYO_YMD <= :DATETO ”,应该怎么写?
这样可以吗?select SHORI_KAISU,SHORI_KBN from TAB1 where SHORI_KBN = 22 IF :DATEFROM <> '' AND UNYO_YMD >= :DATEFROM IF IF :DATETO <> '' AND UNYO_YMD <= :DATETO ORDER BY SHORI_KAISU.
好像不大对。我是新手。多谢!~~
使用CASE 语句可以吗?
select 字段1,字段2 form TAB1 case when :DATEFORM <> '' then (where 条件1) when :DATETO <> '' then (where 条件2) end order by 字段1
谢谢大家。可能我没说明白,是这样的
select 字段1, 字段2 form TAB1 where 条件1 and 条件2 if :DATEFORM <> '' and 条件3 if :DATETO <> '' 条件4 order by 字段1
用sql 文应该怎么组织。再次感谢~~~ 展开
这样可以吗?select SHORI_KAISU,SHORI_KBN from TAB1 where SHORI_KBN = 22 IF :DATEFROM <> '' AND UNYO_YMD >= :DATEFROM IF IF :DATETO <> '' AND UNYO_YMD <= :DATETO ORDER BY SHORI_KAISU.
好像不大对。我是新手。多谢!~~
使用CASE 语句可以吗?
select 字段1,字段2 form TAB1 case when :DATEFORM <> '' then (where 条件1) when :DATETO <> '' then (where 条件2) end order by 字段1
谢谢大家。可能我没说明白,是这样的
select 字段1, 字段2 form TAB1 where 条件1 and 条件2 if :DATEFORM <> '' and 条件3 if :DATETO <> '' 条件4 order by 字段1
用sql 文应该怎么组织。再次感谢~~~ 展开
5个回答
展开全部
sql中的if语句写法和java中差不多,都是先定义变量再使用变量进行判断。由于你的提问不是很清晰,我就自己的看法解答下你的问题:
如果你指的是查询条件的话:select 需要查询的字段,若为所有字段这里是* from 表名 where 查询条件例如name='llo' and age='50';
如果你指的是sql代码的话:
变量名 Number:=0;
变量名 Number:=0;Num为属性
Select 字段名 Into 变量名 from 表悄竖名 就不多写了,条件同查询条件结束时要有;号注意英文字符,这样会把查询到的字段值赋给变量,当使用if语句进行启闹大判弯数断时,取到变量名进行判断就好。if判断语句同:if(变量名!=0) then
返回true时需要运行的语句
end if;
--为注释
如果你指的是查询条件的话:select 需要查询的字段,若为所有字段这里是* from 表名 where 查询条件例如name='llo' and age='50';
如果你指的是sql代码的话:
变量名 Number:=0;
变量名 Number:=0;Num为属性
Select 字段名 Into 变量名 from 表悄竖名 就不多写了,条件同查询条件结束时要有;号注意英文字符,这样会把查询到的字段值赋给变量,当使用if语句进行启闹大判弯数断时,取到变量名进行判断就好。if判断语句同:if(变量名!=0) then
返回true时需要运行的语句
end if;
--为注释
展开全部
select 字段1,字段2 form TAB1 where UNYO_YMD > case DATEFROM <> '' @DATEFROM else - @DATETO end or UNYO_YMD =case DATEFROM <> '' @DATEFROM else @DATETO end
如果笑纯这种还是不行,就定义个 @dfsa 的临时字符串变量
自己把SQL放到 @dfsa 中
再扰升纤调用 excute(缓仿 @dfsa ) 来执行语句。
如果笑纯这种还是不行,就定义个 @dfsa 的临时字符串变量
自己把SQL放到 @dfsa 中
再扰升纤调用 excute(缓仿 @dfsa ) 来执行语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SQL语句没法实现,不过可以用代码选择使用不同的SQL语句
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SQL中是不能这么加语句的.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写一个function可以
否则按楼上的在代码中判断吧
否则按楼上的在代码中判断吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询