0

有没有可能从 MYSQL 数据库中选择并保留拆分结果的方法?我想获取前一天的所有数据,但这会太多,但我也无法拆分结果:

选择所有具有一定限制的,但不要拆分(按特定值,即 user_id)到单独的结果。

例子

SELECT
ti.id, ti.date, ti.duedate, ti.datepaid,
tii.invoiceid, tii.userid,
tc.postcode, tc.country,
(SELECT GROUP_CONCAT(value) FROM custom WHERE relid=tc.id) AS vatid
FROM invoices ti
LEFT JOIN invoiceitems tii
ON tii.invoiceid=ti.id
LEFT JOIN clients tc
ON tc.id=tii.userid
WHERE ti.status='Paid'
AND ti.nullmo_no IS NULL
ORDER BY tii.userid AND tii.id

现在我得到了所有结果,但我需要在不破坏用户 ID 的情况下拆分它们。例如,一个 SELECT 返回 20 个结果,因为用户 1 有 15 个发票,用户 2 有 5 个发票,然后下一个调用返回其余的,也有限制,但不会破坏用户相关的结果组:

选择第 1 部分(全部来自用户 1,全部来自用户 2)第 2 部分(全部来自用户 3,全部来自用户 4)

这可以在一个选择语句中完成吗?

id = 1,2,3,4,5,6,7,8,9,10

名称 = n1、n2、n3、n4、n5、n6、n7、n8、n9、n10

user_id = 1, 1, 1, 2, 2, 2, 3, 3, 4, 5 // 分裂但不分裂

内容 = c1,c2,c3,c4,c5,c6,c7,c8,c9,c10

日期=昨天,昨天,昨天,昨天,昨天,昨天,昨天,昨天,昨天,昨天

交易是选择所有这些,有限制,但不拆分 user_id,所以: 1. 所有从昨天开始 2. LIMIT 如果每个或多个 user_id 的结果多于 LIMIT 所以限制将由数字决定结果。

4

0 回答 0