powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Запрос из 2-х таблиц
4 сообщений из 4, страница 1 из 1
Запрос из 2-х таблиц
    #32116913
wmmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Наверно это задача достаточно ламеская... но для меня ламера это не разрешимый вопрос...

Есть две таблицы

table1
* id ИД заказа
date Дата заказа
login Логин (ИД) заказчика

table2
* id Ид заказа
* tv Код заказоного изделия
cost Стоимость изделия

А мне надо в результате запроса получить следующие

id
date
login
count Количество заказанных изделий
summ Сумма заказа


На MS Access'е это получилось без проьлем.
Я создал запрос1

SELECT tb_id, Count(thing) AS [count], Sum(tb_cost) AS [summ]
FROM table2
GROUP BY tb_id;

Который у меня групперовал все записи одного заказа и подсчитывал количество изделий и сумму

И сделал запрос2

SELECT table1.id, table1.login, table1.date, Запрос1.count, Запрос1.summ
FROM table1 INNER JOIN Запрос1 ON table1.id = Запрос1.id;

Который собственно и возвращал мне желаемый результат!
Но как добиться такого же результата, но одним SQL запросом???

Ведь я не могу так-же как и Access'e на MySQL создавать запросы в место таблиц!

F1 Please!!!!
...
Рейтинг: 0 / 0
Запрос из 2-х таблиц
    #32117092
win_pup
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
select table2.id as id, table1.date, table1.login, count(*), sum(table2.cost)
 from table2 inner join table1
  on table2.id=table1.id
 group by id
...
Рейтинг: 0 / 0
Запрос из 2-х таблиц
    #32117426
wmmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решение окзалось проще не придумать!
Идею понял! Сгруппировать в таблице записи и выбрать!
Но вот как же быть если таблиц из которых я группирую и выбераю записи более одной? Точнее у меня она одна...
Вот такая вот ситуация:
Есть таблица ( одна ) и надо по ней получить статистического характера данные.
То есть в таблице есть ключивое поле tb_login и поля tb_logrf1 , tb_logrf2 и tb_logrf3
Я хотел сделать запрос, который подсчитал бы для каждой уникальной записи (tb_login) количество записей, в полях (tb_logrf1,tb_logrf2,tb_logrf3) которых повторяются значения поля tb_login

Для простоты эксперемента создал таблицу и запрос в MS Access'e, он как-бы работал, но в ситуации когда для какого-то значения, записи находились во всех трёх сгруппированных таблицах, то результат возвращался не верный!

Но не это даже главное... я подумал, что это баг самого MS Access'a (Officce 97) и попытался этот запрос испытать на MySQL но тоже не смог! Ошибка!

ЗАПРОС:

SELECT tbl.tb_login, Count(dl1.tb_logrf1) AS tb_count1, Count(dl2.tb_logrf2) AS tb_count2, Count(dl3.tb_logrf3) AS tb_count3
FROM tbl AS dl3 RIGHT JOIN (tbl AS dl2 RIGHT JOIN (tbl AS dl1 RIGHT JOIN tbl ON dl1.tb_logrf1 = tbl.tb_login) ON dl2.tb_logrf2 = tbl.tb_login) ON dl3.tb_logrf3 = tbl.tb_login
GROUP BY tbl.tb_login, dl1.tb_logrf1, dl2.tb_logrf2, dl3.tb_logrf3;

ОШИБКА:
You have an error in your SQL syntax near '( tbl AS dl2 RIGHT JOIN ( tbl AS dl1 RIGHT JOIN tbl ON dl1.tb_logr' at line 1
...
Рейтинг: 0 / 0
Запрос из 2-х таблиц
    #32118565
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RFTM
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Запрос из 2-х таблиц
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]