SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.09.2010 14:50:20

Arfey
Участник
Зарегистрирован: 02.06.2010
Сообщений: 15

Помогите с запросом ... MySQL

$query = "SELECT  food.Date, food.Food, food.Price, food_menue.number, food_menue.Summ 
FROM food  LEFT JOIN  food_menue ON food.Date=food_menue.Date AND food.Food=food_menue.Food WHERE food.Date BETWEEN DATE('" . $dt_from . "') AND ('" . $dt_to . "') AND (food_menue.User_id IS NULL or food_menue.User_id = '$user_id') order by food.Date";


попмогите соеденить полным соединением ...  возникли проблемы
food_menue.User_id IS NULL or food_menue.User_id = '$user_id'

если айдишник есть и другой то не выводит записи вобше ...

потому я и решил соеденить полным соединением .. незнаю как в синтаксисе прописать

Неактивен

 

#2 06.09.2010 15:56:24

Arfey
Участник
Зарегистрирован: 02.06.2010
Сообщений: 15

Re: Помогите с запросом ... MySQL

$query = "SELECT food.Date, food.Food, food.Price, food_menue.number, food_menue.Summ
FROM food full join food_menue ON food.Date = food_menue.Date AND food.Food = food_menue.Food WHERE food.Date BETWEEN DATE('" . $dt_from . "') AND ('" . $dt_to . "') AND (food_menue.User_id IS NULL or food_menue.User_id = '$user_id') order by food.Date";


выдает ошибку Unknown column 'food.Date' in 'field list'


если так написано (ниже)

$query = "SELECT food.Date, food.Food, food.Price, food_menue.number, food_menue.Summ
FROM food LEFT JOIN food_menue ON food.Date=food_menue.Date AND food.Food=food_menue.Food
WHERE food.Date BETWEEN DATE('" . $dt_from . "') AND ('" . $dt_to . "')
AND (food_menue.User_id IS NULL or food_menue.User_id = '$user_id') order by food.Date";


то все нормально - но мне нада полное соединение ..

Неактивен

 

#3 06.09.2010 17:24:46

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Помогите с запросом ... MySQL

Вы запутались в синтаксисе smile Если бы Вы написали полностью (FULL OUTER JOIN),
то ошибка была бы куда понятнее: MySQL не поддерживает полные внешние объе-
динения (что, впрочем, не мешает Вам написать левое UNION правое).

UPD:
Ах, да, а в Вашем случае слово full MySQL трактует как алиас таблицы, а потому
не может найти в списке полей изначальное название wink

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson