求Oracle的一条 SQL (case 还是 decode 之类的?) 大致 如下name type c_date
aa 1 2011-11-11
bb 2 2000-01-01
cc 3 2010-10-10
查询 type为2 时,c_data 是 5年前 其余c_date 是 2年前的 name..
SQL 菜鸟 求高手指教
aa 1 2011-11-11
bb 2 2000-01-01
cc 3 2010-10-10
查询 type为2 时,c_data 是 5年前 其余c_date 是 2年前的 name..
SQL 菜鸟 求高手指教
不过decode函数用法比较简单
select decode(type,2,'五年前','两年前') type from table1
咳咳,, 我表述不清吧。。
就是分类,分条件查询。。
得到 type 为 2 并且 c_data 为 为 5 年前( c_data < add_months(sysdate,-60)) 的name
以及 type 不为 2 时 c_data 为 为 3 年前( c_data < add_months(sysdate,-36)) 的name
这 应该清楚点了吧 ???
我不能编辑帖子了 就这样回复把
咳咳,, 我表述不清吧。。
就是分类,分条件查询。。
得到 type 为 2 并且 c_data 为 为 5 年前( c_data < add_months(sysdate,-60)) 的name
以及 type 不为 2 时 c_data 为 为 3 年前( c_data < add_months(sysdate,-36)) 的name
这 应该清楚点了吧 ???
我不能编辑帖子了 就这样回复把
咳咳,, 我表述不清吧。。
就是分类,分条件查询。。
得到 type 为 2 并且 c_data 为 为 5 年前( c_data < add_months(sysdate,-60)) 的name
以及 type 不为 2 时 c_data 为 为 3 年前( c_data < add_months(sysdate,-36)) 的name
这 应该清楚点了吧 ???
else c_data < add_months(sysdate,-36) end)
else c_data < add_months(sysdate,-36) end)
已经出来了。
不过,你那个有点问题 where c_data<(case when type=2 then add_months(sysdate,-60)
else add_months(sysdate,-36) end)要把 date 放在外面才行。。