выберите два поля из таблицы с помощью построителя запросов в yii

у меня есть три таблицы, и каждая из них имеет поля «имя пользователя» и «пароль». я хочу выбрать все поля имени пользователя и пароля из этих трех и иметь их в одном массиве.

я написал это, как показано ниже:

$command=Yii::app()->db->createCommand()
            ->select('email','password')
            ->from(array('mosqueculturalliablee','parent','school'))
            ->queryAll(); 

но ошибка говорит, что поля электронной почты и пароля неоднозначны.

как я могу написать этот запрос?


person NZrMd    schedule 02.12.2013    source источник
comment
Попробуйте добавить имя таблицы впереди, Eg: parent.email   -  person Harikrishnan    schedule 02.12.2013


Ответы (1)


Попробуй это

 $command=Yii::app()->db->createCommand()
    ->select('mosqueculturalliablee.email,',
'mosqueculturalliablee.password,',
   'parent.email,','parent.password,','school.email,','school.password,')
    ->from(array('mosqueculturalliablee','parent','school'))
     ->queryAll();

и если вы хотите, вы также можете использовать union()

person Let me see    schedule 02.12.2013
comment
Спасибо за ваш ответ. я пробую это и получаю синтаксическую ошибку: Синтаксическая ошибка или нарушение доступа: 1064 У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с «.email FROM mosqueculturalliablee, parent, school» в строке 1 - person NZrMd; 02.12.2013
comment
У вас есть поле имя пользователя в каждой таблице или поле электронной почты?? - person Let me see; 02.12.2013
comment
у меня они оба в каждой таблице - person NZrMd; 02.12.2013
comment
Попробуйте добавить запятую после каждого поля выбора. Я изменил код. надеюсь, это сработает - person Let me see; 02.12.2013
comment
это похоже на работу, и ошибки не произошло, но в действии, когда я печатаю пароль результата и адрес электронной почты родителя и школьного стола, они не появляются - person NZrMd; 02.12.2013