<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

помогите исправить запрос
01.08.2015 16:25:11 помогите исправить запрос Сообщение #1
Maverick84

Maverick84

Новичок

Новичок

Дата регистрации:
01.08.2015 13:52:37

Сообщений: 2

Добрый день всем!

Задача такая: есть 3 таблицы. В одной перечень устройств, в другой название параметра, а в третей их параметры. Нужно
вывести список устройств с названием параметра у которых значение
параметра одинаковые с указанием значения параметров.
table_1 - находятся перечень устройств. Есть поля -  object_id, object_type_id и name
table_2 - находятся параметры этих устройств. Есть поля -  atr_id, object_type_id и name
table_3 - находятся значения этих параметров. Есть поля -  atr_id, object_type_id и value

Выполняю следующий запрос:
SELECT 1.object_id, 1.name, 2name, 3.value, COUNT(3.value)
FROM table_1 1 --выбираю устройства
JOIN table_2 2 -- соединяю с нужным параметром
ON (1.object_type_id=2.object_type_id AND 1.object_type_id=5 AND
2.atr_id=10) --соединяю по одинаковому значению типа типа устройства,
где 1.object_type_id=5 - тип устройства  AND 2.atr_id=10 - нцжный
параметр
LEFT JOIN table_3 3 --соединяю с нужным значением параметра
ON (1.object_id=3.object_id AND 3.atr_id=10)
group BY 3.value -- группирую по одинаковому значению параметра
HAVING COUNT(3.value) > 1 --проверяю где совпадают значения параметров

Проблема в том, что выводит склеенный список устройств и параметр по которому они совпали, а нужно вывести перечень устройств.

Вывод должен быть в таком виде:
object_id 1 - устройство 1 - параметр 10 - значение 123
object_id 2 - устройство 2 - параметр 10 - значение 123
object_id 15 - устройство 15 - параметр 10 - значение 123.

Помогите пожалуйста исправить запрос, чтобы выводились все устройства, а не склеенный список.

Заранее благодарен!
Профиль
02.08.2015 20:00:34 помогите исправить запрос Сообщение #2
Maverick84

Maverick84

Новичок

Новичок

Дата регистрации:
01.08.2015 13:52:37

Сообщений: 2

Запрос исправлен, тема больше не актуально. Спасибо!
Профиль
06.08.2015 13:02:12 помогите исправить запрос Сообщение #3
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 177

Пишите желательно как вы исправили, может другие люди тоже будут искать решение такой же проблемы
Профиль