gpt4 book ai didi

MySQL - 获取行号后选择和加入

转载 作者:行者123 更新时间:2023-11-29 03:15:50 25 4
gpt4 key购买 nike

我正在尝试获取以下选择语句(其中包括一个列 JOIN)的行号(即排名),但没有在开头声明 SET 变量。

这是因为我使用的是 WordPress/MySQL 插件,它只能模拟单语句代码。无法识别将先验变量声明为 0 然后递增的常见技巧。

是否有另一种方法可以使用下面的 select & join 获取行号?

SELECT s.id
, s.item
, s.state
, c.job_count
FROM wp_state_tab s
LEFT
JOIN wp_custom_tab c
ON c.state_id = s.id
WHERE c.date = CURDATE()
ORDER
BY c.job_count DESC

示例数据输出

enter image description here

MySQL版本为5.6.40-84.0-log

最佳答案

MySQL 可能对变量很敏感——好在它们已被弃用。对于 ORDER BYGROUP BY,您通常必须使用子查询:

SELECT (@rn := @rn + 1) as seqnum, sc.*
FROM (SELECT s.id, s.item, s.state, c.job_count
FROM wp_state_tab s LEFT JOIN
wp_custom_tab c
ON c.state_id = s.id
WHERE c.date = CURDATE()
ORDER BY c.job_count DESC
) sc CROSS JOIN
(SELECT @rn := 0) params;

关于MySQL - 获取行号后选择和加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57077306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com