Я хотел бы обновить столбец в таблице, используя другой столбец, исходящий из инструкции select
. Это то, что я пытаюсь:Операция обновления SQL от select
UPDATE CostFile
SET UPrice = (
SELECT
(
dbo.EmployeeDailyTrans.DailyCost
) + (
dbo.EmployeeDailyTrans.OverTimeHoursCost
)
/
(
dbo.EmployeeDailyTrans.NumberOfHours
) + (
dbo.EmployeeDailyTrans.NumberOfOverTimeHours
)
FROM
dbo.EmployeeDailyTrans
WHERE
dbo.EmployeeDailyTrans.EmployeeCode = 'UNE25681'
)WHERE Code = 'UNE25681'
, но я получил эту ошибку:
[Err] 21000 - [SQL Server]Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. 01000 - [SQL Server]The statement has been terminated.
Ваш запрос выбора возвращает более одной строки, поэтому ошибка ... – balaji
Кажется, кажется довольно понятным, может добавить «TOP 1» во внутренний выбор, поскольку он появится «EmployeeCode» не уникален, возможно? –