Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

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

Сообщения:  [1-10]   [11-16] 

 
 автор: Арфей   (16.06.2010 в 12:36)   письмо автору
 
   для: вред   (16.06.2010 в 12:27)
 

классс =) СПАСИБА=)

  Ответить  
 
 автор: вред   (16.06.2010 в 12:27)
 
   для: Арфей   (16.06.2010 в 12:12)
 

Отбор и применяется только на присоединённую таблицу. И если в этой таблице значения нет, а условие на значение есть, то вся строка в результирующую выборку не попадёт.

Пытаясь угадать, возможно так...

AND (food_menue.User_id IS NULL OR food_menue.User_id = '0')

  Ответить  
 
 автор: вред   (16.06.2010 в 12:18)
 
   для: Арфей   (16.06.2010 в 12:11)
 

Я про пользователя. Должны присоединяться только "схожие" строки от конкретного пользователя? (при наличии таких строк)

Возможно, нужно связывание полей `Usar_id` и `User_id` из структур таблиц в предыдущей теме?

  Ответить  
 
 автор: Trianon   (16.06.2010 в 12:17)   письмо автору
 
   для: Арфей   (16.06.2010 в 12:08)
 

Вы могли сразу бы не быть писать дурацкие алиасы таб1 и таб2 в исходном условии, а изложить вопрос с реальными именами.
Либо остаться в рамках исходного именования до конца.

Левое соединение у Вас оказывается пустым потому, что в разделе WHERE имеются ссылки на элементы правой (по соединению) таблицы.
Очевидно, их стоит перенести в раздел ON условия соединения.

  Ответить  
 
 автор: Арфей   (16.06.2010 в 12:12)   письмо автору
 
   для: вред   (16.06.2010 в 12:07)
 

я понял изза этого AND .. а как зделать чтоб отбор по пользователю применялся тока на таб 2 ??

  Ответить  
 
 автор: Арфей   (16.06.2010 в 12:11)   письмо автору
 
   для: вред   (16.06.2010 в 12:07)
 

должен выводить записи в таб1 отобраные по интервалу дат ... и дополнительно если есть по левому соединению в таб2 схожие строки то еще и кол с таб2 .. если нету строк в таб 2 то таб1 и всё ..

  Ответить  
 
 автор: Арфей   (16.06.2010 в 12:08)   письмо автору
 
   для: Trianon   (16.06.2010 в 12:06)
 

food - это таблица 1
а food_menue таблица 2 ..

да я поменял термины .. небуду ж я таб1 и таб2 в коде реальном писать)

  Ответить  
 
 автор: вред   (16.06.2010 в 12:07)
 
   для: Арфей   (16.06.2010 в 11:57)
 

AND food_menue.User_id = '0'


Это реальный пользователь с id=0? Если да, то это логично, ведь сравнениваемое значение пользователя берётся из 2ой таблицы, а в ней соответствующие записи отсутствуют и все поля равны NULL.

Что по смыслу должен выводить этот запрос?

  Ответить  
 
 автор: Trianon   (16.06.2010 в 12:06)   письмо автору
 
   для: Арфей   (16.06.2010 в 11:57)
 

Какие к чертям таб1 и таб2 , когда у Вас в запросе food и food_menue?
Почему Вы меняете термины посреди диалога?!

  Ответить  
 
 автор: Арфей   (16.06.2010 в 11:57)   письмо автору
 
   для: Арфей   (16.06.2010 в 11:34)
 

Не получаеться =(

       $query = "SELECT  food.Date, food.Food, food_menue.number 
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 = '0' order by food.Date";


если в таб1 есть записи а в таб2 нету то оно невыводит ничего

  Ответить  

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования