- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Почему выборка дает разный результат при
и
второй вариант выдает меньше значений
?
второй вариант выдает меньше значений
А база точно одна и та же? =)
Заодно интересно было бы проверить запросы
и
Вдруг ещё 2 разных результата получатся?
PS: у меня получились 4 одинаковых результата, как ни странно... :(
Интересен весь запрос, то, что до WHERE и после 117
PS: у меня получились 4 одинаковых результата, как ни странно...
У Вас данные другие.. 😂
На http://sql-ex.ru, к примеру, есть задачи, в которых данные подобраны так, что некоторые "неправильные" запросы выдают правильные ответы на тестовой базе, но ошибочные на основной..
Количество строк должно быть одинаково, а вот порядок не детерминирован, если вы не указали ORDER BY (хотя и в этом случае он должен быть одинаков между двумя запросами). В запросе нет группировок?
Вопрос вообще про MySQL ?
Вопрос вообще про MySQL ?
Думаю, по большому счёту, не так уж важно. Со времён SQL-92 логика работы и приоритет операторов, используемых в этой части запроса не изменялась.
---------- Добавлено 26.02.2020 в 11:11 ----------
Почему выборка дает разный результат при
А можно контрольный пример в студию?.. ))) Хотя бы скрины результата, где разница видна (можно с затёртыми "важными" данными).. а лучше - запрос целиком и дамп таблиц (опять же, с затёртыми данными), для воспроизведения "разности результата"..
Запрос такой, база одна
SELECT t1.id,t1.fullname,t1.shortname,t1.lastname,t1.firstname,t1.middlename,
t2.name as city,t2.morpher,t2.morpher2,t4.name,t1.average,t1.comments,t1.vote,t1.rate,t5.created,t6.name as spec
FROM spec_items as t1
INNER JOIN spec_sections as t2 on t2.id = t1.section_id
LEFT JOIN spec_working as t3 on t3.item_id = t1.id
LEFT JOIN spec_items as t4 on t3.firm_id = t4.id
LEFT JOIN spec_categories as t6 on t6.id = t1.category_id
LEFT JOIN comments_items as t5 on (t5.object_id = t1.id and t5.id = (SELECT max(id) FROM comments_items WHERE `object_id` = t1.id and object_group = 'com_spec'))
WHERE t1.category_id = 116 or t1.category_id = 117
AND t1.fullname not LIKE '%.%'
AND t1.comments <=2
AND t5.ip != '13.13.13.14'
GROUP BY t1.id
limit 10
Версия < 5.7? Покажите
Нужно добавить ONLY_FULL_GROUP_BY, чтобы ваш запрос не работал, после чего переписать его по человечески.
Ну и как обычно, сам WHERE скинули не полный, хорошо хоть база одна и та же.
так естественно разный результат. AND приоритетнее, чем OR. и в зависимости от скобок выходят разные условия. без скобок выходит t1.category_id = 116 без остальных условий ИЛИ t1.category_id = 117 со всеми следующими AND. А в случае со скобками выбираем записи обеих категорий, и на обе распространяются условия после AND