我对SQL很新,并尝试与SQL Server进行多次连接。
给出
c_slpn
:
"ID Name Age Salary"
'1 Abe 61 140000'
'2 Bob 34 44000'
'5 Chris 34 40000'
'7 Dan 41 52000'
'8 Ken 57 115000'
'11 Joe 38 38000'
c_cust
:
"ID Name City Industry Type"
'4 Comp1 pleasant J'
'6 Comp2 oaktown J'
'7 Comp3 jackson B'
'9 Comp4 Jackson B'
c_ordr
:
"Number order_date cust_id salesperson_id Amount"
'10 8/2/96 4 2 540'
'20 1/30/99 4 8 1800'
'30 7/14/95 9 1 460'
'40 1/29/98 7 2 2400'
'50 2/3/98 6 7 600'
'60 3/2/98 6 7 720'
'70 5/6/98 9 7 150'
我应该找到'列出具有'Comp1'订单的销售人员,但下面的脚本会抛出错误:
第6行'关键字'JOIN'附近的语法不正确。
查询:
SELECT *
FROM c_cust
JOIN C_ordr ON C_ordr.cust_id= c_cust.ID
WHERE NAME = 'Comp1'
JOIN c_slpn ON c_slpn.id=c_ordr.cust_id
请帮帮我......,我被困了:- [这是我的第一个问题,我错过了什么]
答案 0 :(得分:2)
WHERE
子句追溯JOIN
:
SELECT *
FROM c_cust
JOIN C_ordr ON C_ordr.cust_id = c_cust.ID
JOIN c_slpn ON c_slpn.id = c_ordr.salesperson_id
WHERE c_cust.NAME = 'Comp1'
顺便说一句,您也可以在JOIN
条款中执行此操作,例如C_ordr.cust_id = c_cust.ID AND c_cust.NAME = 'Comp1'
。
答案 1 :(得分:0)
不确定它是否只是拼写错误,但您的表名不一致。
SELECT *
FROM c_cust
JOIN c_ordr
ON c_ordr.cust_id= c_cust.ID
JOIN c_slpn
ON c_slpn.id=c_ordr.cust_id
WHERE c_cust.Name= 'Comp1'