0
我想從表,FirstName和LastName更新2個字段,從同一個表中獲取數據,但從名稱字段包含名和姓。更新與案件sql不工作
我想:
UPDATE Table SET FirstName = (SELECT CASE
WHEN name LIKE '% %' THEN LEFT(name, Charindex(' ', name) - 1)
ELSE name
END
from Table),
LastName = (select CASE
WHEN name LIKE '% %' THEN RIGHT(name, Charindex(' ', Reverse(name)) - 1)
END from Table)
我收到以下錯誤信息:子查詢返回多個值。當子查詢遵循=,!=,<,< =,>,> =或當子查詢用作表達式時,這是不允許的。
檢查您的子查詢。錯誤說自己。它不能允許超過1個值。它只能返回一個值。你使用兩個不同的表?可以將Table Only視爲表名。 – rach
答案將取決於後端,儘管消息確實聽起來像SQL服務器 –
您可能需要對其進行重新修改,以便您沒有子查詢。在我看來,你不應該需要這些子查詢。案例陳述是,子查詢沒有。 –