0
我想刪除由該查詢影響的所有記錄:刪除記錄,受另一查詢
SELECT COUNT(Distinct news_id) AS TotalRecords, country
FROM upload_news
WHERE [upload_time] BETWEEN GetDate()-7 AND GetDate()
GROUP BY country
我不知道如何寫這個查詢。
我想刪除由該查詢影響的所有記錄:刪除記錄,受另一查詢
SELECT COUNT(Distinct news_id) AS TotalRecords, country
FROM upload_news
WHERE [upload_time] BETWEEN GetDate()-7 AND GetDate()
GROUP BY country
我不知道如何寫這個查詢。
如果你想刪除所有滿足謂詞查詢中的行...
刪除GROUP BY
條款並更換SELECT <expression_list>
與DELETE
關鍵字...
但是,這似乎不是MySQL語法。在方括號圍繞IDENTIFER,而「-7
」是繼GETDATE()
功能使這個看起來像SQL服務器(的Transact-SQL)語法。
這將從upload_news
具有指定範圍內的值upload_time
除去所有的行。
DELETE FROM upload_news
WHERE [upload_time] BETWEEN GETDATE()-7 AND GetDate()
,可隨時更換DELETE
與SELECT *
,這將返回所有將從upload_news
表中刪除行。請注意,外鍵約束和/或觸發器可能會導致其他表中的行受到影響(刪除,更新和/或插入)
您無法使用一個查詢執行此操作,因爲您得到的結果是一個數字(來自'COUNT')。你必須用另一個查詢來完成它:'在DELETE FROM upload_news WHERE [upload_time]之間GetDate() - 7 AND GetDate()' –
謝謝@Justin lurman –