0

次のクエリで返されたレコードを削除するにはどうすればよいですか?

Select HL.User from "Hobby List" HL 
INNER JOIN (Select SUBSTRING(Code,1,10) Code,Count(SUBSTRING(CODE,1,10))
AS Occurances from Patient where length(Patient.Code) > 10
Group By SUBSTRING(Code,1,10)
Having COUNT(SUBSTRING(Code,1,10)) > 1) P
on SUBSTRING(HL.User,1,10) = P.Code
Group By HL.User

「存在する場合は削除する」アプローチを使用してレコードを削除しようとしましたが、これは間違っていたか、クエリによって返されたレコードだけでなく、テーブル内のすべてのレコードを削除したため、適切に実行しませんでした。

ありがとう

4

2 に答える 2

3
DELETE FROM "Hobby List" HL WHERE HL.User IN (your query here)

これは非常にうまくいくはずです。私はこれを他のシナリオでかなりの回数使用しました。

http://www.w3schools.com/sql/sql_in.asp

于 2012-10-06T01:33:02.077 に答える
2

これを試して:

DELETE FROM 'Hobby List'
WHERE User  IN 
(

Select HL.User from "Hobby List" HL 
INNER JOIN (Select SUBSTRING(Code,1,10) Code,Count(SUBSTRING(CODE,1,10))
AS Occurances from Patient where length(Patient.Code) > 10
Group By SUBSTRING(Code,1,10)
Having COUNT(SUBSTRING(Code,1,10)) > 1) P
on SUBSTRING(HL.User,1,10) = P.Code
Group By HL.User

)
于 2012-10-06T01:33:36.580 に答える