我目前是一名學生,我正試圖解決SQL的一個小問題。我想根據來自同一個表的過濾結果在表上執行更新語句。 Here is the table I have:SQL更新語句與where子句中的子查詢相同的表
這是查詢我到現在:
UPDATE ComplexityLessons
SET ACADEMYRATIO = '0,896'
WHERE (
SELECT c.START, c.DATE, c.ACTIVITY, c.ACADEMY
from ComplexityLessons c
join (
SELECT b.ACTIVITY, b.START, b.DATE
FROM ComplexityLessons b
) as b
on c.ACTIVITY = b.ACTIVITY and c.DATE = b.DATE and c.START = b.START
having COUNT(DISTINCT ACADEMY) = 2)
所以,總結我想更新列「ActivityRatio」僅在2所院校在同一時間進行同樣的活動。當我僅使用子查詢時,我得到了同時執行相同活動的院校,但我無法弄清楚更新聲明。 預先感謝您的幫助!
您使用MySQL,MS SQL Server或Oracle嗎?不要標記不涉及的產品! – jarlh
@jarlh:我使用phpmyadmin,所以MySQL。 –