簡體   English   中英

MySQL 插入 SELECT。 按計數排序插入,但實際上不插入計數

[英]MySQL INSERT SELECT. Ordering insert by count but don't actually insert the count number

對不起這個荒謬的標題!

是否可以運行 MySQL INSERT SELECT 查詢,其中“SELECT”部分包含 COUNT() function(受益於 HAVING 子句上的匹配列)

例如:

INSERT INTO my_log (user_id, date_finished) 
SELECT COUNT(id) AS count, user_id, '2011-05-31 00:00:00'
FROM assignments WHERE assignment_type = 10 
GROUP BY user_id
HAVING count >=10 

我想在 TABLE my_log 中插入完成 10 個類型為 10 的任務的用戶的日期。實際上,我正在對此稍作擴展,因此重要的是我使用 COUNT 和 HAVING 僅查找已完成 10 個或更多的任務。 但是我的問題仍然是,由於 COUNT() function,我試圖將 3 列插入到聲明的 2 列中,所以我正在尋找一種從 COUNT 中受益但不在我的數據集中返回它的方法/考慮插入。

謝謝你的幫助:)

嘗試:

INSERT INTO my_log ( user_id, date_finished) 
SELECT user_id, '2011-05-31 00:00:00'
FROM assignments WHERE assignment_type = 10 
GROUP BY user_id
HAVING ( COUNT(id) ) >=10 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM