SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 27.03.2020 11:44:07

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Сложный запрос с использованием двух таблиц

dohod2005
+----+--------------+-------------+----------+---------------+
| ID | INN          | NameORG     | ID_D2005 | NameRab       |
+----+--------------+-------------+----------+---------------+
|  1 | 7107547812   | Perspectiva |     7223 | Peterson      |
|  2 | 7107547812   | Perspectiva |     7226 | Jaramush      |
|  3 | 7107547812   | Perspectiva |     7231 | Sabler        |
|  4 | 45623411225  | BlackNoise  |     7267 | Peterson      |
|  5 | 45623411225  | BlackNoise  |     8001 | Karlson       |
|  6 | 45623411225  | BlackNoise  |     8011 | Svenson       |
|  7 | 45623411225  | BlackNoise  |     8061 | Shneerson     |
|  8 | 680987345515 | Modos       |     1002 | Navuhodonosor |
|  9 | 680987345515 | Modos       |     1012 | Plumkin       |
| 10 | 680987345515 | Modos       |     1014 | Solomonson    |
| 11 | 680987345515 | Modos       |     1035 | Shulmanson    |
+----+--------------+-------------+----------+---------------+
dohmes
+----+----------+--------+--------+--------+
| ID | ID_D2005 | nommes | summes | koddoh |
+----+----------+--------+--------+--------+
|  1 |     7223 | 01     |   1000 |   2000 |
|  2 |     7223 | 02     |   1100 |   2000 |
|  3 |     7231 | 03     |   1200 |   2000 |
|  4 |     7231 | 03     |    200 |   2200 |
|  5 |     7267 | 04     |   1300 |   2000 |
|  6 |     7267 | 05     |   1400 |   2000 |
|  7 |     7226 | 01     |    500 |   2000 |
|  8 |     7226 | 02     |    600 |   2000 |
|  9 |     8001 | 03     |    700 |   2500 |
| 10 |     1012 | 04     |    800 |   2000 |
| 11 |     1012 | 05     |    900 |   2000 |
| 12 |     8011 | 08     |   2900 |   2000 |
| 13 |     8011 | 02     |   2800 |   2000 |
| 14 |     1002 | 02     |    290 |   2000 |
| 15 |     1002 | 05     |    190 |   2000 |
| 16 |     1014 | 02     |   1200 |   2000 |
| 17 |     1014 | 03     |   1400 |   2000 |
| 18 |     1014 | 04     |   1600 |   2000 |
| 19 |     1014 | 06     |   1800 |   2000 |
| 20 |     1035 | 07     |   1800 |   2200 |
+----+----------+--------+--------+--------+

можете составить запрос:

Найти все организации в которых не менее 50% работников получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей.

Структура таблиц:
Create table dohod2005
(ID int(11) auto_increment primary key not null,
INN char(13) not null,
NameORG char(20) not null,
ID_D2005 int(11) not null,
NameRab char(25) not null);

Create table dohmes
(ID int(11) auto_increment primary key,
ID_D2005 int(11) not null,
Nommes char(2) default ‘01’ not null,
Summes int(11) not null,
Koddoh int(11) not null);

Неактивен

 

#2 27.03.2020 14:47:19

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

select NameORG from dohod2005 group by 1 having count(*) < (select 2 * count(*) from dohod2005 where ID_D2005 in (select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1) group by NameORG)

Неактивен

 

#3 28.03.2020 06:43:03

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

Найти все организации в которых не менее 50% работников получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей.

vasya написал:

select NameORG
from dohod2005 group by NameORG
having count(*) <
(select 2*count(*)
from dohod2005
where ID_D2005 in (select  ID_D2005 from dohmes where summes <= 1000
group by ID_D2005
having count(*) > 1)
group by NameORG)

ошибка #1242 - Subquery returns more than 1 row
А можно расписать каждый GROUP BY, Having & count действие по значению?

Отредактированно Геннадий84 (28.03.2020 15:09:17)

Неактивен

 

#4 28.03.2020 14:52:23

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

также есть запрос:
SELECT A.NameORG,
       A.NameRab,
       SUM(B.Summes) as sumall
FROM dohod2005 as A
LEFT JOIN dohmes as B ON A.ID_D2005=B.ID_D2005
                     AND B.koddoh=2000 # связывать ТОЛЬКО зарплаты
GROUP BY A.ID_D2005
ORDER BY A.NameORG;
который считает суммарные зарплаты сотрудников.
Как выбрать из них максимальные для каждой из организаций, что изменить в запросе?

Отредактированно Геннадий84 (28.03.2020 14:52:58)

Неактивен

 

#5 28.03.2020 22:07:11

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

Геннадий84 написал:

ошибка #1242 - Subquery returns more than 1 row
А можно расписать каждый GROUP BY, Having & count действие по значению?

-- кол-во работников в каждой конторе

select NameORG, count(*) from dohod2005 t1 group by 1;


-- работники, которые получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей

select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1;


-- кол-во работников, которые получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей, в каждой фирме

select NameORG, count(*) from dohod2005 t1 where ID_D2005 in
(select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1)
group by 1;


-- итоговый запрос

select NameORG from dohod2005 t1 group by 1 having count(*) <=
(select 2 * count(*) from dohod2005 where ID_D2005 in
(select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1)
and NameORG = t1.NameORG group by NameORG);

Неактивен

 

#6 28.03.2020 22:19:49

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

Геннадий84 написал:

также есть запрос:
SELECT A.NameORG,
       A.NameRab,
       SUM(B.Summes) as sumall
FROM dohod2005 as A
LEFT JOIN dohmes as B ON A.ID_D2005=B.ID_D2005
                     AND B.koddoh=2000 # связывать ТОЛЬКО зарплаты
GROUP BY A.ID_D2005
ORDER BY A.NameORG;
который считает суммарные зарплаты сотрудников.
Как выбрать из них максимальные для каждой из организаций, что изменить в запросе?

В https://sqlinfo.ru/articles/info/18.html есть 6 способов решения вашей задачи

Неактивен

 

#7 29.03.2020 10:24:17

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

Геннадий84 написал:

ошибка #1242 - Subquery returns more than 1 row
А можно расписать каждый GROUP BY, Having & count действие по значению?

-- кол-во работников в каждой конторе

select NameORG, count(*) from dohod2005 t1 group by 1;


-- работники, которые получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей

select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1;


-- кол-во работников, которые получали в течении не менее чем 2-х месяцев зарплату не более 1000 рублей, в каждой фирме

select NameORG, count(*) from dohod2005 t1 where ID_D2005 in
(select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1)
group by 1;


-- итоговый запрос

select NameORG from dohod2005 t1 group by 1 having count(*) <=
(select 2 * count(*) from dohod2005 where ID_D2005 in
(select  ID_D2005 from dohmes where summes <= 1000 group by 1 having count(*) > 1)
and NameORG = t1.NameORG group by NameORG);

заработало! единственное нужно добавить koddoh=2000 - зарплаты, 2200, 2500 - премии и матпомощь.

select NameORG from dohod2005 t1 group by 1 having count(*) <=
(select 2 * count(*) from dohod2005 where ID_D2005 in
(select  ID_D2005 from dohmes where (summes <= 1000) and (koddoh=2000) group by 1 having count(*) > 1)
and NameORG = t1.NameORG group by NameORG);

Отредактированно Геннадий84 (29.03.2020 11:04:30)

Неактивен

 

#8 29.03.2020 12:58:43

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

Геннадий84 написал:

также есть запрос:
SELECT A.NameORG,
       A.NameRab,
       SUM(B.Summes) as sumall
FROM dohod2005 as A
LEFT JOIN dohmes as B ON A.ID_D2005=B.ID_D2005
                     AND B.koddoh=2000 # связывать ТОЛЬКО зарплаты
GROUP BY A.ID_D2005
ORDER BY A.NameORG;
который считает суммарные зарплаты сотрудников.
Как выбрать из них максимальные для каждой из организаций, что изменить в запросе?

В https://sqlinfo.ru/articles/info/18.html есть 6 способов решения вашей задачи

Почитал и не представляю приблизительно как это сделать, может поможете недогоняющему?
Единственное понимаю что нужен Left Join чтобы связать поля NameORG, NamRab, Summes.

Отредактированно Геннадий84 (29.03.2020 13:00:39)

Неактивен

 

#9 29.03.2020 19:56:20

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

У вас есть таблица - организация, работник, суммарная зарплата.
Нужно для каждой фирмы найти работника с максимальной суммарной зарплатой.

В статье рассматривается пример - юзер, сообщение, дата сообщения.
Нужно выбрать последнее сообщение каждого пользователя.

Отличие только в названии полей.

Неактивен

 

#10 30.03.2020 07:10:42

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

У вас есть таблица - организация, работник, суммарная зарплата.
Нужно для каждой фирмы найти работника с максимальной суммарной зарплатой.

В статье рассматривается пример - юзер, сообщение, дата сообщения.
Нужно выбрать последнее сообщение каждого пользователя.

Отличие только в названии полей.

Попробовал так:

Select A.NameORG, A.NameRab, B.MAX(summax)
FROM dohod2005 as A
LEFT JOIN
              (Select ID_D2005, SUM(summes) as summax FROM dohmes WHERE koddoh=2000
              GROUP BY ID_D2005)
              as B ON A.ID_D2005 IN=B. ID_D2005
GROUP BY A.NameORG


#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=B. ID_D2005 GROUP BY A.NameORG LIMIT 0, 30' at line 4

Отредактированно Геннадий84 (30.03.2020 09:03:10)

Неактивен

 

#11 30.03.2020 09:25:27

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

а что такое IN=
и пробел далее после B. тоже лишний

p.s. `A.NameRab` у вас будет произвольный, собственно статья как раз и объясняет почему и что делать.

p.p.s. что должно быть выведено для фирмы, у которой никто из работников вообще не получал зарплату?

Неактивен

 

#12 30.03.2020 10:13:47

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

а что такое IN=
и пробел далее после B. тоже лишний

исправил

Select A.NameORG, A.NameRab, B.MAX(summax)
FROM dohod2005 as A
LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes WHERE koddoh=2000
GROUP BY ID_D2005) as B ON A.ID_D2005=B.ID_D2005
GROUP BY A.NameORG
ошибка
#1630 - FUNCTION b.MAX does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual

vasya написал:

p.s. `A.NameRab` у вас будет произвольный, собственно статья как раз и объясняет почему и что делать.

p.p.s. что должно быть выведено для фирмы, у которой никто из работников вообще не получал зарплату?

там нет фирм в которых никто из работников не получал зарплату, но замечание верное.

Отредактированно Геннадий84 (30.03.2020 10:14:21)

Неактивен

 

#13 30.03.2020 10:22:43

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

MAX(summax) или MAX(B.summax)
вместо B.MAX(summax)

Неактивен

 

#14 30.03.2020 13:13:31

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

MAX(summax) или MAX(B.summax)
вместо B.MAX(summax)

Верно
Select A.NameORG, A.NameRab, MAX(B.summax) as summax
FROM dohod2005 as A
LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes WHERE koddoh=2000
GROUP BY ID_D2005) as B ON A.ID_D2005=B.ID_D2005
GROUP BY A.NameORG

теперь A.NameRab неверное выводит как вы и говорили,
проблема в том что 3-е значение у меня выводится из 2-ой таблицы.

Отредактированно Геннадий84 (30.03.2020 13:40:26)

Неактивен

 

#15 30.03.2020 16:52:47

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

имея NameORG и MAX(B.summax) делаете ещё один join чтобы получить правильный NameRab (см способ №1 в статье)

Неактивен

 

#16 01.04.2020 08:20:06

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

имея NameORG и MAX(B.summax) делаете ещё один join чтобы получить правильный NameRab (см способ №1 в статье)

SELECT t.NameORG, t.NameRab, t.summax
FROM (Select A.NameORG, A.NameRab, summax
FROM dohod2005 as A LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS B WHERE koddoh=2000 GROUP BY B.ID_D2005) ON A.ID_D2005=B.ID_D2005))
as t JOIN
    (Select C.NameORG, C.NameRab, MAX(D.summax) as msummax
FROM dohod2005 as C LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS D WHERE koddoh=2000 GROUP BY D.ID_D2005)  GROUP BY B.NameORG) as t1 
ON t.NameRab=t1.NameRab AND t.summax = t1.msummax;

#1248 - Every derived table must have its own alias

Неактивен

 

#17 01.04.2020 11:24:21

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

#1248 - Every derived table must have its own alias
каждая производная таблица (from подзапрос) должна иметь собственный псевдонизм (см ваш вариант в https://sqlinfo.ru/forum/viewtopic.php?pid=48185#p48185)


потеряли условие объединения dohod2005 as C LEFT JOIN (..BY D.ID_D2005) <тут должен быть ON> GROUP BY


Select C.NameORG, C.NameRab, .. -- C.NameRab тут будет произвольным
GROUP BY B.NameORG) as t1


ON t.NameRab=t1.NameRab AND t.summax = t1.msummax; -- NameRab вам ка раз нужно найти, имея NameORG и summax

Неактивен

 

#18 01.04.2020 12:34:47

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

#1248 - Every derived table must have its own alias
каждая производная таблица (from подзапрос) должна иметь собственный псевдонизм (см ваш вариант в https://sqlinfo.ru/forum/viewtopic.php?pid=48185#p48185)
ON t.NameRab=t1.NameRab AND t.summax = t1.msummax; -- NameRab вам ка раз нужно найти, имея NameORG и summax

так в том то и проблема что NameRab у меня в одной таблице, а summax в другой.
Как их слепить вместе я уже не пойму.

vasya написал:

имея NameORG и MAX(B.summax) делаете ещё один join чтобы получить правильный NameRab (см способ №1 в статье)

так в том то и дело что я не имею max(B.summax) он получен группировкой по NameORG путём связки из второй таблицы через связь по ID_D2005

псевдонимы вроде расставил "as t" & "as t1".
Да, потерял условие объединения dohod2005 as C LEFT JOIN.

Отредактированно Геннадий84 (01.04.2020 12:44:26)

Неактивен

 

#19 01.04.2020 13:43:54

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

Геннадий84 написал:

так в том то и дело что я не имею max(B.summax) он получен группировкой по NameORG путём связки из второй таблицы через связь по ID_D2005

Какая разница откуда получен?
У вас есть запрос, дающий имя организации NameORG и максимальную суммарную зарплату сотрудника в этой организации MAX(B.summax).
Результат запроса по сути некая таблица.
И вы правильно джойните её с другой таблицей `t`, полученной запросом
(Select A.NameORG, A.NameRab, summax
FROM dohod2005 as A LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS B WHERE koddoh=2000 GROUP BY B.ID_D2005) ON A.ID_D2005=B.ID_D2005))
as t

summax есть в обеих производных таблицах

Неактивен

 

#20 01.04.2020 14:20:27

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

Геннадий84 написал:

так в том то и дело что я не имею max(B.summax) он получен группировкой по NameORG путём связки из второй таблицы через связь по ID_D2005

Какая разница откуда получен?
У вас есть запрос, дающий имя организации NameORG и максимальную суммарную зарплату сотрудника в этой организации MAX(B.summax).
Результат запроса по сути некая таблица.
И вы правильно джойните её с другой таблицей `t`, полученной запросом
(Select A.NameORG, A.NameRab, summax
FROM dohod2005 as A LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS B WHERE koddoh=2000 GROUP BY B.ID_D2005) ON A.ID_D2005=B.ID_D2005))
as t

summax есть в обеих производных таблицах

ну ошибка таже самая #1248 - Every derived table must have its own alias

SELECT t.NameORG, t.NameRab, t.summax
FROM (Select A.NameORG, A.NameRab, summax
FROM dohod2005 as A LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS B WHERE koddoh=2000 GROUP BY B.ID_D2005) ON A.ID_D2005=B.ID_D2005))
as t JOIN
    (Select C.NameORG, C.NameRab, MAX(D.summax) as msummax
FROM dohod2005 as C LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes AS D WHERE koddoh=2000 GROUP BY D.ID_D2005) ON A.ID_D2005=B.ID_D2005)  GROUP BY B.NameORG) as t1
ON t.NameRab=t1.NameRab AND t.summax = t1.msummax;

Неактивен

 

#21 01.04.2020 15:08:20

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

из 4-ёх замечаний в https://sqlinfo.ru/forum/viewtopic.php?pid=48188#p48188
вы исправили только 2-ое (и кстати, неверно, обратите внимание на псевдонимы)

Неактивен

 

#22 01.04.2020 16:09:04

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

из 4-ёх замечаний в https://sqlinfo.ru/forum/viewtopic.php?pid=48188#p48188
вы исправили только 2-ое (и кстати, неверно, обратите внимание на псевдонимы)

#1248 - Every derived table must have its own alias
каждая производная таблица (from подзапрос) должна иметь собственный псевдонизм (см ваш вариант в https://sqlinfo.ru/forum/viewtopic.php?pid=48185#p48185)

Пробую так

SELECT t.NameOrg, t.NameRab, t.summax
FROM (Select NameORG, NameRab, summax
     FROM dohod2005 
     LEFT JOIN (Select SUM(summes) as summax FROM dohmes WHERE koddoh=2000   
     GROUP BY dohmes.ID_D2005) ON dohod2005.ID_D2005=dohmes.ID_D2005)   as t
JOIN
    (Select NameOrg, MAX(summax) as msummax
     FROM dohod2005 
     LEFT JOIN (Select SUM(summes) as summax FROM dohmes WHERE koddoh=2000   
     GROUP BY dohmes.ID_D2005) ON dohod2005.ID_D2005=dohmes.ID_D2005
                                                                                   GROUP BY NameORG) as t1
ON t.NameOrg = t1.NameOrg AND t.summax = t1.msummax;

ошибка таже #1248 - Every derived table must have its own alias

vasya написал:

имея NameORG и MAX(B.summax) делаете ещё один join чтобы получить правильный NameRab (см способ №1 в статье)

Да нет у меня этих двух значений в одной таблице поэтому использую FROM (Select...) as t - так можно?

Отредактированно Геннадий84 (01.04.2020 16:14:02)

Неактивен

 

#23 01.04.2020 16:31:32

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Сложный запрос с использованием двух таблиц

1.

Геннадий84 написал:

ошибка таже #1248 - Every derived table must have its own alias

vasya написал:

#1248 - Every derived table must have its own alias
каждая производная таблица (from подзапрос) должна иметь собственный псевдонизм (см ваш вариант в https://sqlinfo.ru/forum/viewtopic.php?pid=48185#p48185)

2.

Геннадий84 написал:

Да нет у меня этих двух значений в одной таблице поэтому использую FROM (Select...) as t - так можно?

да

Неактивен

 

#24 01.04.2020 16:57:35

Геннадий84
Участник
Зарегистрирован: 27.03.2020
Сообщений: 16

Re: Сложный запрос с использованием двух таблиц

vasya написал:

1248 - Every derived table must have its own alias
каждая производная таблица (from подзапрос) должна иметь собственный псевдонизм

ВСЁ! Заработало! Спасибо!

SELECT t.NameOrg, t.NameRab, t.summax
FROM
    (Select A.NameORG, A.NameRab, B.summax
     FROM dohod2005  AS A
     LEFT JOIN (Select ID_D2005, SUM(summes) as summax FROM dohmes WHERE koddoh=2000   
     GROUP BY dohmes.ID_D2005) AS B ON A.ID_D2005=B.ID_D2005)   
as t
JOIN
    (Select B.NameOrg, MAX(table_sum.summax) as msummax
     FROM dohod2005 as B 
     LEFT JOIN (Select C.ID_D2005, SUM(C.summes) as summax FROM dohmes as C WHERE   
     koddoh=2000  GROUP BY C.ID_D2005) as table_sum ON B.ID_D2005=table_sum.ID_D2005
                                                                                   GROUP BY NameORG)
as t1
ON t.NameOrg = t1.NameOrg AND t.summax = t1.msummax ORDER BY t.NameOrg;

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson