我试图根据CustNo
值将INSERT
转换为Accounts
,表中连接了AccountId
。出于某种原因,我无法弄清楚,SELECT cust.CustNo
列基于GivenName
和Surname
的Custs
表列,即使在单独测试时仍然使用相同的WHERE子句进行操作时,也不会获取任何内容。INSERT INTO基于INNER JOIN'd SELECT列没有返回SELECT值
INSERT INTO Accounts (Type, Balance, CustNo)
SELECT
'Chequing', 0, cust.CustNo
FROM
Custs cust
INNER JOIN
Accounts ON cust.CustNo = Accounts.CustNo
WHERE
cust.GivenName = 'FirstName' AND cust.Surname = 'LastName';
我想不出任何理由,这是不返回任何错误,但也工作,并抓住了正确的CustNo
作为一个单独的SELECT
与此相同WHERE
。我错过了一个重要的领域来关联这两个表,或可能不正确地加入他们?
我会建议添加表定义,示例数据以及预期输出。这将有助于他人理解您的问题,并帮助您尽快得到最佳答案。 – tarheel
我真的不明白你为什么加入帐户。您不使用任何字段,如果这是您插入客户的第一个帐户,那么连接将不会导致返回结果 –
@JamesCasey,对于缺乏明确性我表示歉意。类型和余额来自账户,而CustNo,GivenName和Surname来自Cust。 – Jaeriko