[SQL] 왜 DELETE 문에 별칭을 사용할 수 없습니다?
SQL왜 DELETE 문에 별칭을 사용할 수 없습니다?
의 SQL Server Compact Edition의 비주얼 스튜디오 2010 (나도 몰라 일반적으로 아마 SQL Server 및 SQL)에서,이 명령은 작동합니다 :
DELETE FROM foods WHERE (name IN ('chickens', 'rabbits'))
식별자 F 근처의 오류 :하지만이 명령의 오류가 발생합니다. OUTPUT을 기대.
DELETE FROM foods f WHERE (f.name IN ('chickens', 'rabbits'))
해결법
-
==============================
1.별명에 표는 말을해야 할 것이다 :
별명에 표는 말을해야 할 것이다 :
DELETE f FROM dbo.foods AS f WHERE f.name IN (...);
나는 특히 (적어도 IIRC) 엄격한 ANSI이 더 이상 부합 함을 선언 이후,이 특정 DELETE 문에 대한 앨리어싱의 점을보고 실패합니다. 그러나 예, 의견 제안으로, 다른 쿼리 형태 (예 : 상관 관계)에 대한 필요가있다.
-
==============================
2.DELETE 문은 이상한 구문이 있습니다. 그것은 다음과 같이 간다 :
DELETE 문은 이상한 구문이 있습니다. 그것은 다음과 같이 간다 :
DELETE f FROM foods f WHERE (f.name IN ('chickens', 'rabbits'))
from https://stackoverflow.com/questions/11005209/why-cant-i-use-an-alias-in-a-delete-statement by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 방법과 같은이 SQL에서 조인을 사용하는? (0) | 2020.05.19 |
---|---|
[SQL] 여러 테이블에서 SQL SELECT (0) | 2020.05.19 |
[SQL] 오브젝트 [INFORMATION_SCHEMA]에서 확인할 수없는 기준. TABLES] (0) | 2020.05.19 |
[SQL] 파일 시스템의 디렉토리 경로 계층 / 트리 데이터베이스 (0) | 2020.05.19 |
[SQL] 왜 빠른 일괄 삽입 / 업데이트는 무엇입니까? 어떻게 배치 업데이트 작업을? (0) | 2020.05.19 |