case when的使用-解决分表查数据给某一个字段
Posted 丹丹Jordan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了case when的使用-解决分表查数据给某一个字段相关的知识,希望对你有一定的参考价值。
一个表中存的是目前有效的菜单,另外一个表中存的是有效菜单的历史更改数据
SELECT
msg.msg_id,
msg.from_user_name,
msg.msg_type,
msg.url,
msg.EVENT,
msg.event_key,
(
SELECT wm.name
FROM wx_menu wm
WHERE wm.url = msg.event_key
) as ticket,
case when (
SELECT wm.name
FROM wx_menu wm
WHERE wm.url = msg.event_key
) is null then
( SELECT wm_log.name
FROM wx_menu_log wm_log
WHERE wm_log.url = msg.event_key
order by created desc limit 1
)
else (
SELECT wm.name
FROM wx_menu wm
WHERE wm.url = msg.event_key
) end
as newTicket,
msg.text_match_flag,
msg.text_match_content,
msg.created
FROM wechat_message msg
where
msg.from_user_name="XXXXX"
order by msg.created desc
以上是关于case when的使用-解决分表查数据给某一个字段的主要内容,如果未能解决你的问题,请参考以下文章