여러 값을 가진 CASE는 어떻게 사용할 수 있습니까? 여기 내 쿼리입니다 :업데이트 사례 조건이있는 SQL Server
UPDATE car_availability
SET availability_status = CASE
WHEN car_no = (SELECT A.car_no
FROM car_maintenance A
WHERE A.car_no = car_no
AND A.Start_Date = (SELECT DATEADD(dd, DATEDIFF(dd, 0, GETDATE()), 0)))
THEN 'For Maintenance'
ELSE 'Good'
END
난 하위 쿼리는 1 개 이상의 값을 반환 오류
을 얻고있다. 하위 쿼리가 =,! =, <, < =,>,> = 또는 하위 쿼리가 식으로 사용될 때 하위 쿼리가 수행되는 경우에는 허용되지 않습니다. 명세서가 종료되었습니다.
는 car_maintenance
테이블에서 나는 car_availability
표에 나는 모든 자동차를하면서 유지 보수를위한 자동차의 세트가있다. 나는 car_maintenance
아래에있는 모든 차량의 availability_status
을 '유지 관리'와 동일하게 설정하려고합니다. 어떻게해야합니까?
내 열 car_availability
은 car_no
및 car_availability
입니다. 아니면 IF ELSE를 사용하여이 작업을 수행 할 수 있습니까? 미리 감사드립니다.
는 car_maintenance
테이블의 경우, 열은
car_no, maintenance_category, start_date_of_maintenance, end_date_of_maintenance
감사합니다. 작동 중입니다. availability_status에 CASE를 여러 개 가질 수 있습니까? –
케이스가 여러 개있는 경우 availability_status에 다른 값을 지정할 수 있습니다. – scaisEdge