1) Почему не выводит через echo [tel] ? или нужно использовать NULL AS tel вместо NULL? 2) как узнать из какой таблицы выводит [text] ? Код (PHP): $sql_arr=mysql_query(" ( SELECT id, time, title, text, city, cat, null FROM table1 ) UNION ( SELECT id, time, title, text, city, cat, tel FROM table2 ) order by id desc" ); } while($sql = mysql_fetch_array($sql_arr)) { echo $sql['tel']." - ".$sql['text']."<br>"; }
1. выполните запрос в клиенте или консоли и посмотрите какая выборка получается и получается-ли. 2. следуя вашему списку полей - никак. Можно добавить псевдополе как идентификатор таблицы раз есть необходимость в таком запросе.
в table 1 нет поля tel, а в table 2 есть. Если вместо NULL прописать NULL as tel для table 1, то из table 2 все таки начинает выводить поле tel Добавлено спустя 1 минуту 34 секунды: псевдополе, это как? создать по полю в каждой таблице, например category со значениями 1 или 2 , так?
с type появляется ошибка Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in
Код (PHP): $sql_arr=mysql_query(" ( SELECT id, time, title, text, city, cat, null FROM resumes ) UNION ( SELECT id, time, title, text, city, cat, tel FROM vacancies ) order by id desc" ); while($sql = mysql_fetch_array($sql_arr)) { echo $sql['time']." - ".$sql['title']." - ".$sql['text']." - ".$sql['city']." - ".$sql['cat']; //ниже не работает if($sql['tel']){ echo $sql['tel']; } } Добавлено спустя 1 минуту 24 секунды: а с type пробовал так Код (PHP): $sql_arr=mysql_query(" ( SELECT id, time, title, text, city, cat, null FROM resumes ) UNION ( SELECT id, time, title, text, city, cat, tel, vacancies type FROM vacancies ) order by id desc" );
я с type раньше не сталкивался, возникающая ошибка вроде как означает не равное кол-во полей... в resumes тоже нужно type ? Добавлено спустя 57 секунд: null ставлю, т.к. в resumes нет tel. в чем ошибка ?
Вы её уже сами назвали. Во-первых, разное количество полей в запросах с UNION, решите проблему. Во-вторых, подумайте над разницей между записями: vacancies type и 'vacancies' type (или 'vacancies' AS type)
Код (PHP): $sql_arr=mysql_query(" ( SELECT id, time, title, text, city, cat, null, 'resumes' type FROM resumes ) UNION ( SELECT id, time, title, text, city, cat, tel, 'vacancies' type FROM vacancies ) order by id desc" ); tel все равно через echo не отображается, если к null не прибавить "null as tel" в табл resumes Добавлено спустя 1 минуту 36 секунд: еще я с type не сталкивался, какую он роль играет здесь?