2013-11-13 7 views
0

Я новичок в базах данных, и я действительно застрял! Пожалуйста, дайте мне руку! понятия не имею, где я допустил ошибку ...Извлечение имен из 2 таблиц с одинаковыми именами столбцов

У меня есть 2 таблицы пациента и смотритель

они оба имеют Lastname и Firstname

Мне нужно извлечь и фамилию Firstname от них обоих, и я сделал следующий запрос:

SELECT имя ОТ mortenu8. patient, caretaker где caretaker.firstname = patient.firstname;

Но он говорит код ошибки: 1052. Колонка «Имя» в списке полей неоднозначна 0,034 сек

Есть ли у вас какие-либо идеи, почему? Я буду очень признателен за вашу помощь ... Спасибо!

+0

вы должны specift, которые ПгвЬЫат – zxc

+0

Является 'mortenu8.patient' имя вашей таблицы? – MusicLovingIndianGirl

+0

пациент - это имя моей таблицы – user2986531

ответ

1

Использование объектов базы данных.

Когда вы указываете первое имя в списке столбцов, в котором обе таблицы имеют одинаковое имя столбца, механизм базы данных не может распознать имя, с которого именно вы пытаетесь получить!

Многие из вышеперечисленных ответов говорят то же самое.

Просто повторить то же самое,

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

что-то в моей базе данных неверно ... в нем перечислены 2 столбца. Оба столбца перечисляют имена – user2986531

0

Предполагая, что ваш запрос дизъюнктивно работает, вы можете попробовать это

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

ИЛИ

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

Спасибо за ваш ответ! этот запрос перечисляет имя смотрителя 2 раза ... – user2986531

+0

@ user2986531 вы можете выбрать либо 1 – zxc

+0

@ user2986531 см. EDIT! – zxc

0

Попробуйте

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

он также перечисляет имя смотрителя 2 раза – user2986531

0

попробовать это:

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

, и этот запрос перечисляет имя смотрителя один раз – user2986531

Смежные вопросы