Kumirska
28.06.2011 - 15:32
Привет Всем!
Не могу понять в чем проблема, делаю поиск по двум таблица стал выдавать ошибку,с одной таблицей работало идеально
$result = mysql_query("SELECT * FROM works,heads WHERE name LIKE'%".$search."%' OR fam
LIKE'%".$search."%' OR otch LIKE'%".$search."%' ORDER BY fam",$db);
Сообщение:
Column 'name' in where clause is ambiguous
_____________
никому не дано знать абсолютной истины, ибо понятия, которыми мы оперируем, сами по себе относительны
XCross
28.06.2011 - 15:50
названия полей обрамляй в `` и во тут:
LIKE', пробел поставь.
Воощем вот так:
$result = mysql_query("SELECT * FROM `works`, `heads` WHERE `name` LIKE '%".$search."%' OR `fam` LIKE '%".$search."%' OR `otch` LIKE '%".$search."%' ORDER BY `fam`");
_____________
Обмен Ukash на WebMoney
T1grOK
28.06.2011 - 15:54
Укажи полный модификатор полей. Похоже у тебя name присутствует в обеих таблицах.
_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
alex12060
28.06.2011 - 16:34
KumirskaМускул не понимает с какой таблицы брать.
Делай полную индексацию:
table1.name
table2.text
Kumirska
29.06.2011 - 11:14
То есть если у меня 2 таблицы, heads и works и в обеих есть поля name,fam,otch то мне нужно
сделать что-то вроде
$result = mysql_query("SELECT * FROM `works`, `heads` WHERE `works.name` LIKE '%".$search."%'
OR `works.fam` LIKE '%".$search."%' OR `works.otch` LIKE '%".$search."%' `heads.name` LIKE
'%".$search."%'
OR `heads.fam` LIKE '%".$search."%' OR `heads.otch` LIKE '%".$search."%' ORDER BY `fam`");
Извиняюсь если не так понял и написал бред)
_____________
никому не дано знать абсолютной истины, ибо понятия, которыми мы оперируем, сами по себе относительны
Игорь_Vasinsky
29.06.2011 - 11:17
а ORDER BY обидел
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
29.06.2011 - 11:20
Смотри как красиво можно оформить:
$result = mysql_query("SELECT * FROM `works`, `heads` "
."WHERE `works.name` LIKE '%".$search."%' "
."OR `works.fam` LIKE '%".$search."%' "
."OR `works.otch` LIKE '%".$search."%' "
."AND `heads.name` LIKE '%".$search."%' "
."OR `heads.fam` LIKE '%".$search."%' "
."OR `heads.otch` LIKE '%".$search."%' "
."ORDER BY `anytable.fam`");
прям глаз радуется ;)
кстати оператор бул упущен, я предположил что AND
"AND `heads.name` LIKE '%".$search."%
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Kumirska
29.06.2011 - 11:39
Игорь_Vasinsky, спасибо! Предположил правильно
_____________
никому не дано знать абсолютной истины, ибо понятия, которыми мы оперируем, сами по себе относительны
Kumirska
29.06.2011 - 11:47
Во блин, он говорит что нет такого поля как 'works.name'
Unknown column 'works.name' in 'where clause'
_____________
никому не дано знать абсолютной истины, ибо понятия, которыми мы оперируем, сами по себе относительны
Игорь_Vasinsky
29.06.2011 - 12:03
тогда надо про JOIN почитать - объеденяет запросы к нескольким таблицам, я пока его не использовал.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.