gpt4 book ai didi

mysql LIMIT 函数内的 Mysql SELECT 函数

转载 作者:行者123 更新时间:2023-11-29 02:12:13 24 4
gpt4 key购买 nike

SELECT COUNT('2018-02-12') 
as ids FROM tg_partner_data
WHERE assign_to = '2'
AND
followup_date = '2018-02-12' AND active='Y'
LIMIT (SELECT count FROM tg_master_count WHERE count_for = 'followup')

我尝试将计数作为输出,但此查询不起作用。我这样使用是因为限制设置是动态的。

最佳答案

使用 LIMIT 的一个直接问题是您没有 ORDER BY 子句。 您希望从结果集中得到哪些第一条记录?这还不清楚。我将提供一个通用模式,您可以使用它来让子查询限制记录的数量。

考虑一个只有一列的简单表格:

col
1
2
3
4
5

现在假设您要根据 col 的顺序,使用一些子查询来限制结果集中的记录数。我们可以这样写:

SET @rn=0;

SELECT col
FROM
(
SELECT
col,
@rn:=@rn+1 rn
FROM yourTable
ORDER BY
col
) t
WHERE t.rn <= (SELECT 3 FROM dual); -- replace with your own subquery

Demo

这里的基本思想是我们在子查询中模拟行号,即我们为每条记录分配一个行号,按照 col 列排序。然后我们对该表进行子查询,并仅保留与您要用于限制的子查询匹配的记录。

关于mysql LIMIT 函数内的 Mysql SELECT 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48740468/

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