问一个SQL语句的写法

来源:百度知道 编辑:UC知道 时间:2024/09/20 07:14:56
select .... where....
如果是传过来的变量$DATE是月末,上面语句里where后跟语句A,否则,where后跟语句B
数据库是SYBASE IQ

我想应该是用宏,可是定义宏后,where后跟的语句就是一个字符串了,没法执行。
如果解决不了判断月末,解决上面这个问题也行。
不是哦 字符串不是时间的话 怎么转换为语句啊
难道只能用动态SQL?

可以直接用过if判断语句
if isdate是月末 then
执行语句A
else
执行语句B
end if

宏定义字符串解决方式:
宏定义:date:'1984-03-31'
使用时:to_date(${date},'yyyy-mm-dd')

判断月末:
case when date=select max(date1) from dual where month(date1)=month(date) then A else B end

SYBASE IQ 什么东东?没用过

SQL.....我知道一个叫LSQ的...--!

SQL.....我知道一个叫LSQ的...--!

if(last_day(传过来的变量$DATE)=传过来的变量$DATE))
then
select ...
where A
else
select ...
where B
end if;