MYSQL データベースから SELECT し、分割結果を保持する方法はありますか? 前日からすべてのデータを取得したいのですが、多すぎますが、結果を分割することもできません。
特定の制限ですべてを選択しますが、個別の結果に (特定の値、つまり 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 を壊さずに分割する必要があります。たとえば、ユーザー 1 には 15 件の請求書があり、ユーザー 2 には 5 件の請求書があったため、1 つの SELECT は 20 件の結果を返します。次の呼び出しは残りを返します。これも制限がありますが、ユーザー関連の結果グループは壊れません。
SELECT パート 1 (すべてユーザー 1 から、すべてユーザー 2 から) パート 2 (すべてユーザー 3 から、すべてユーザー 4 から)
これは 1 つの select ステートメントで実行できますか?
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. 1 つ以上の user_id ごとに LIMIT よりも多くの結果がある場合は LIMIT したがって、制限は数によって決定されます。結果の。