| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > Использование нескольких условий в JOIN..ON |
| Автор: patap 25.7.2011, 15:11 | ||||||
| Есть таблица хранящая деревья. У юзера есть возможность следить за узлами дерева. Так вот при выборке дерева, нужно получить информацию о том, следит ли пользователь за узлом выбранного дерева. Делаю таким запросом
Вот результат, тут видно что, если в поле follow - NULL, то пользователь за этим узлом не следит.
Все отлично работает, но вот вычитал тут http://mysql.ru/docs/man/JOIN.html
В моем случае, я не вижу (может оно и есть...) более рационального решения проблемы, кроме как исспользовать такое условие в ON (userfollownodes.humor_id = nodes.id AND userfollownodes.user_id = 2) Так вот, является ли использование такого условия вредным и почему? |
| Автор: solenko 25.7.2011, 16:20 |
| 1. Это, скорее, относится к читадильности кода, но никак не относится к производительности запроса. Уж тем более не относится к вашему запросу. 2. Скорее-всего это относится к ранним версиям mysql, но сс тех пор оптимизатор запросов очень сильно поумнел ) |
| Автор: patap 25.7.2011, 16:53 | ||
| solenko, оптимистичный ответ там же по ссылке, есть такое
исходя из этого, думаю не будет каких-либо издержек, если к примеру написать вместо (A.C1=B.C1 AND A.C2=B.C2 AND A.C3=B.C3) что-то такое (A.C1=B.C1 AND A.C2=4 AND A.C3=5) |