在SQL中使用2个不明确的列名查询错误

E. *_*son 3 sql sql-server inner-join ambiguous ambiguous-call

我现在一直在使用这个查询,我很难过.我是SQL新手,我无法理解为什么我收到错误:

SELECT customer_number, first_name_initial, last_name,serve_address_1, serve_address_2, serve_city, serve_state, route_serve_zip_code, phone_number1, referral_code
FROM customer_master 
INNER JOIN route_detail 
ON m.customer_number=r.customer_number
WHERE (referral_code='american')
Run Code Online (Sandbox Code Playgroud)

错误

消息209,级别16,状态1,行1不明确的列名称'customer_number'.消息209,级别16,状态1,行1不明确的列名称'phone_number1'.

我已尝试按如下方式添加列,但也没有运气.任何帮助将不胜感激!

SELECT customer_number, first_name_initial, last_name,serve_address_1, serve_address_2, serve_city, serve_state, route_serve_zip_code, phone_number1, referral_code
FROM customer_master m
INNER JOIN route_detail r
ON m.customer_number=r.customer_number
WHERE (referral_code='american')
Run Code Online (Sandbox Code Playgroud)

Rah*_*thi 5

问题出在这条线上

SELECT customer_number
Run Code Online (Sandbox Code Playgroud)

您需要指定要从哪个表中获取customer_number,如下所示:

SELECT r.customer_number
Run Code Online (Sandbox Code Playgroud)

要么

SELECT m.customer_number
Run Code Online (Sandbox Code Playgroud)

所以你的最终查询看起来像这样:

SELECT r.customer_number, --or m.customer_number
first_name_initial, last_name,serve_address_1, serve_address_2, serve_city, serve_state, route_serve_zip_code, phone_number1, referral_code
FROM customer_master 
INNER JOIN route_detail 
ON m.customer_number=r.customer_number
WHERE (referral_code='american')
Run Code Online (Sandbox Code Playgroud)