select
CASE
WHEN (`ticket`.num IS NOT NULL) THEN 'web'
WHEN (`ticket`.num IS NULL) THEN (SELECT CASE
WHEN (`channel`.`NAME` = '渠道 1')
THEN 'app'
WHEN (`channel`.`NAME` = '渠道 2')
THEN '小程序'
ELSE '其他' END AS channel
FROM `channel`,
`sreq`
WHERE `channel`.`chanid` = `S_SRV_REQ`.`chanid`
AND `ticket`.req_id = `sreq`.`REQ_ID`
LIMIT 1) END AS channel
from ticket where ...;
1
optional 2022-10-28 11:10:50 +08:00 via iPhone
WHEN (`channel`.`NAME` = '渠道 1')
THEN '渠道 2' WHEN (`channel`.`NAME` = '渠道 3') THEN '渠道 4' xswl |
2
wuwukai007 OP @optional 这不重要哈,随便找的 sql ,主要是子查询优化蛮明显的
|
3
sadfQED2 2022-10-28 14:06:27 +08:00 via Android
万年 5.7 路过,不知道等到 2032 年公司运维会不会升级到 8
|
4
leegradyllljjjj 2022-10-28 14:26:17 +08:00 via Android
mysql 确实是容易死锁
|
5
bthulu 2022-10-28 14:35:33 +08:00
万年 5.0 路过, 每次想升级, 运维总是说又不是不能用.
好像他说的也没错, 线上跑的还挺稳的 |
6
YepTen 2022-10-28 14:41:55 +08:00
羡慕能升 8.0 的,万年 5.7 。
|
7
chenqh 2022-10-28 14:51:00 +08:00
又不是不能用,dog
|
8
fyw321451 2022-10-28 16:46:54 +08:00 via iPhone
5.7 的还好了 我们是 5.4
|
9
wxf666 2022-10-29 08:58:23 +08:00
希望能优化下 `WITH RECURSIVE` 递归 CTE 查询
相同数据量和结果的情况下,几层递归就比非递归版本耗时翻一倍。。损耗有点大。。 可见这个 [帖子回复]( https://v2ex.com/t/889443#r_12274236 ) |