假设有两张表A和B
A表中一个字段a存的是sql语句(case when)这段case when语句加工的是我想要的数据,然后再赋值给b字段,这样如果逻辑变化就只需要修改a字段中存的逻辑,不需要改动B表
现在要在B表的b字段中引用这个a字段的逻辑,这种sql要怎么写呢
关联查询即可,代码如下,其中a为你的case when对应的sql语句
SELECT B.* FROM B WHERE B.b = (SELECT a from A)
举例说明一下,你要什么效果?
随便贴出几条数据,说明你的目的
select * from B where b in(select a from A);
你这个相当于字段中存的不是数据是代码逻辑,所以得需要一个udf去理解和解析这个逻辑,比如你的逻辑时Python写的,你的udf中调用python的执行命令去解析这个脚本就可以了