Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
помогите исправить запрос (Maverick84) 01/08/2015 - 17:02:56
      Re: помогите исправить запрос (Akina) 01/08/2015 - 23:03:43
      Re: помогите исправить запрос (Maverick84) 02/08/2015 - 01:40:25
      Re: помогите исправить запрос (Akina) 02/08/2015 - 15:02:06
      Re: помогите исправить запрос (Maverick84) 02/08/2015 - 19:38:19
      Re: помогите исправить запрос (Maverick84) 02/08/2015 - 19:59:29

> Original message text:
> From: Maverick84 - 01/08/2015 - 17:02:56
> Subject:помогите исправить запрос
> -----------------
>
>
> Новичок
> Новичок
>
> Дата регистрации:
> 01.08.2015 14:52:37
>
> Сообщений: 1
> Добрый день всем!
>
> Задача такая: есть 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.
>
> Помогите пожалуйста исправить запрос, чтобы выводились все устройства, а не склеенный список.
>
> Заранее благодарен!
>


From: Maverick84 - 02/08/2015 - 01:40:25
Subject:помогите исправить запрос
-----------------
База выстроена по модели Тенцера. Для понимания есть таблица объектных типов- в ней указаны типы объектов (страна, город, всякие девайся). Есть другая таблица в ней находятся объекты (конкретный перечень городов, магазинов, девайсов и т.д) она же в примере table_1. В table_2 находятся атрибуты этих объектов (улицы, дома, названия параметров типа MAC адрес, IP, длина, ширина и т.д). В таблице table_3 находятся уже непосредственно значения этих атрибутов (номера домов, MAC адреса типа 01:AF:09:12:12:AA, айпишки 10.0.0.1 и т.д.)


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
43361



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |