从SQLSERVER转到ORACLE,发现DECLARE不会用了,
我想做一个判断,就是先查询表A的最大ID是否小于1,如果小于1就差些表B数据,如果大于1就不查询表B数据,该如何实现呢?
这里有个declare的例子,declare是定义变量的
https://zhuanlan.zhihu.com/p/25078150
你这个和declare没关系,用子查询
if ((select max(id) from a) <1)
select * from b
直接语句:
select *
from 表B
where exists
(select 1 from (select max(id) max_id from 表A) where max_id < 1)
建议百度下case语句 case when then
select (case when a <1 then (select count(*) from 表b ) else a end)字段名 from
(select max(id) a from 表a)
试下这个呢
declare是申明匿名块中的变量的,就相当于存储过程的的is及前面那部分