如表 A 关联 B 当value like 'A%' 根据 t_key 关联 否则 根据 t1_key关联 可以这么写吗? 一直报错
A:
value t_key t1_key
B:
t_key t1_key
select A. * from A, B where (case when A.t_value like 'A%' then A.t_key=B.t_key else A.t1_key=B.t1_key end) ;
万分感激
------解决思路----------------------
case when A.t_value like 'A%' then A.t_key=B.t_key else A.t1_key=B.t1_key end
===>
WHERE (A.t_value like 'A%' AND A.t_key=B.t_key) OR (A.t_value NOT like 'A%' AND A.t1_key=B.t1_key)
------解决思路----------------------
语法上可以,只要能用表达式的地方都能用case when