1、有两个表,表1取自数据库,在前台展示表1的数据(这个表每天自动更新最新一版的数据)。
2、然后表1设置填报功能,可以修改表1的数据并提交,因为表1的数据每天有更新,所以肯定不能提交到表1中,就需要提交到表2修改表中(这是我目前的思路)
3、问题就是:前台需要展示修改后的数据,如果表1正确不需要修改就展示表1的数据,如果表1不正确那么就需要展示修改后表2的数据(也就意味着同样一个id,当表1正确的时候,表2没有数据;当表1不正确时,修改后提交到表2表2有数据),请问这个sql怎么写
根据参数判断取哪个表,格式参考
你直接全部提交到表2不就行了。如果数据正确,用户不会修改,它会进入表2,如果数据不正确,用户修改了,也是存入表2,那么最终展示表2的数据不就行了?
按表2有数据即查询表2 ,否则查表1;
SELECT COALESCE
( b.num, a.num )
FROM
( SELECT 1 id, 1 num ) a
LEFT JOIN ( SELECT 1 id, 2 num ) b ON a.id= b.id
或用case when判断 数据是否正确
SELECT
case
when a.num =1 then a.num
else b.num
end num