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

Форум MySQL

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

 

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

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

тема: Помогите составить запрос с объединением

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

 
 автор: oradev   (18.01.2013 в 14:26)   письмо автору
 
   для: Sfinks   (18.01.2013 в 13:40)
 

Да кто вам сказал, что его надо применять везде не попадя - вы придумываете опять что-то, ею Богу, я такого не говорил, лишь привел что будет с вашим запросом без LEFT.

Зачем же обрывать вопрос, я только не понимаю

все "file_name", принадлежащие "suggestions", которые в свою очередь пренадлежат "Vasya"

Васи нет в files и все приехали, но есть в suggestions.

Спорить с вами, да куда там.

  Ответить  
 
 автор: Sfinks   (18.01.2013 в 13:55)   письмо автору
 
   для: lutsk   (18.01.2013 в 13:10)
 

Вот еще статья по той же теме. Мне кажется более наглядной.
http://www.getinfo.ru/article610.html

  Ответить  
 
 автор: Sfinks   (18.01.2013 в 13:46)   письмо автору
 
   для: lutsk   (18.01.2013 в 10:30)
 

> Значит придется двойным foreach с запросом к базе при каждой итерации обходиться..
Ни в коем случае!
Вообще обращение к БД в цикле - это очень плохо. Всегда нужно стараться этого избежать. А если это не возможно, значит не правильно спроектирована сама БД.

Получайте все данные одним запросом (как я показал или, если возможна ситуация, когда конкретной suggestion_id не соответствует ни один файл, то заменив JOIN на LEFT JOIN) и уже на клиенте разбирайте результат какими угодно циклами.

  Ответить  
 
 автор: Sfinks   (18.01.2013 в 13:40)   письмо автору
 
   для: oradev   (18.01.2013 в 09:29)
 

У вас самоцель со мной поспорить чтоли?

Я говорю о том, что если ВАШ пример НЕ ВОЗМОЖЕН по логике данных (а такие примеры сплошь и рядом), то и LEFT не нужен.

Кроме того, ЧИТАЙТЕ УСЛОВИЕ!
> вытащить все "file_name", принадлежащие "suggestions"
В первую очередь нужны файлы, а не suggestions с файлами или без них.

Поэтому JOIN, JEFT JOIN, RIGHT JOIN, CROSS JOIN нужно использовать там где это надо, а не везде где не попадя.

  Ответить  
 
 автор: lutsk   (18.01.2013 в 13:10)   письмо автору
 
   для: Valick   (18.01.2013 в 11:09)
 

Спасибо, - ознакомлюсь обязательно!

  Ответить  
 
 автор: lutsk   (18.01.2013 в 13:09)   письмо автору
 
   для: oradev   (18.01.2013 в 10:38)
 

Так видимо и сделаю.

  Ответить  
 
 автор: Valick   (18.01.2013 в 11:09)   письмо автору
 
   для: lutsk   (18.01.2013 в 10:30)
 

http://www.internet-technologies.ru/articles/article_635.html

  Ответить  
 
 автор: oradev   (18.01.2013 в 10:38)   письмо автору
 
   для: lutsk   (18.01.2013 в 10:30)
 

Автор, а что вы хотите получить на выходе ?
Развернутое дерево ?

Гораздо лучше предварительно загрузить данные в массив из базы, ключом будет родитель, а элементами например объект - соответствующей вашей каждой строке из базы.

А получить дерево одним запросом можно, например предварительно отсоритовав дерево.

  Ответить  
 
 автор: lutsk   (18.01.2013 в 10:30)   письмо автору
 
   для: Sfinks   (18.01.2013 в 00:24)
 

Такой запрос я уже пробовал. На уровне базы данных вроде древовидной структуры не реализовать. Значит придется двойным foreach с запросом к базе при каждой итерации обходиться..

  Ответить  
 
 автор: oradev   (18.01.2013 в 09:29)   письмо автору
 
   для: Sfinks   (18.01.2013 в 09:14)
 

Sfinks, автор привел структуру, а ваш запрос без LEFT ничего не вернет вообще в случаи который привел я , не надо придумывать.

  Ответить  

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

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

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