从具有相同列名的2个表中检索名称

时间:2013-11-13 07:14:01

标签: mysql sql

我是数据库新手,我真的卡住了!请帮我一把!不知道,我在哪里弄错了......

我有2张病人和看护人

他们都有姓氏和名字

我需要从它们中检索姓氏和名字,我做了以下查询:

SELECT firstname 来自mortenu8patientcaretaker caretaker.firstname = patient.firstname;

但它说 错误代码:1052。字段列表中的列'firstname'不明确0.034秒

你知道为什么吗?我将非常感谢你的帮助...... 谢谢!

4 个答案:

答案 0 :(得分:1)

使用数据库对象。

当您在列列表中指定两个表具有相同列名的第一个名称时,数据库引擎无法识别您要检索的表的第一个名称!!

上述许多答案都说同样的事情。

重申同样的事情,

SELECT patient.firstname, ctaker.firstname 
FROM mortenu8.patient patient, caretaker ctaker 
WHERE ctaker.firstname = patient.firstname;

答案 1 :(得分:0)

假设您的加入查询正常,您可以试试这个

SELECT patient.firstname,caretaker.firstname
FROM mortenu8.patient, caretaker
where caretaker.firstname = patient.firstname

OR

SELECT caretaker.firstname
    FROM mortenu8.patient, caretaker
    where caretaker.firstname = patient.firstname

答案 2 :(得分:0)

试试这个

SELECT MP.firstname as PatientName,  
        C.firstname as CaretakerName
FROM mortenu8.patient MP, caretaker C 
where C.firstname = MP.firstname;

答案 3 :(得分:0)

试试这个:

SELECT patient.firstname     
FROM mortenu8.patient, caretaker    
where caretaker.firstname = patient.firstname;