Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить запрос из трех таблиц с сложной сортировкой. / 5 сообщений из 5, страница 1 из 1
21.03.2018, 11:50
    #39618060
andyscj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить запрос из трех таблиц с сложной сортировкой.
Есть три таблицы:
product, order и order_line

Мне надо написать MySQL запрос, который выведет следующую
таблицу:
http://piccy.info/view3/12173661/4a9daf641797eac1d9cca392875c1430/][IMG] http://i.piccy.info/i9/3cac5df73f53d2036d1c6fcac68519e2/1521621515/70613/1230996/1.png [/IMG]

честно говоря, вообще запутался с этим заданием...
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
CREATE TABLE `product` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL DEAFULT '',
`price` decimal(8,2) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `product` (`id`, `name`, `price`) VALUES
(1, 'iPhone', 101.99),
(2, 'Samsung Galaxy', 92.99),
(3, 'Lenovo P2', 88.79),
(4, 'HP Pavilion', 98.79);

CREATE TABLE `order` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`customer_name` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `order` (`id`, `customer_name`) VALUES
(1, 'Bob'),
(2, 'Jhon'),
(3, 'Jane'),
(4, 'Anna'),
(5, 'Linda'),
(6, 'Jane'),
(7, 'Anna'),
(8, 'Jane'),
(9, 'Bob'),
(10, 'Bob'),
(11, 'Linda'),
(12, 'Linda');

CREATE TABLE `order_line` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`order_id` int(11) NOT NULL,
`product_id` int(11) NOT NULL,
`quantity` int(7) NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`order_id`) REFERENCES `order`(`id`),
FOREIGN KEY (`product_id`) REFERENCES `product`(`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `order_line` (`id`, `order_id`, `product_id`, `quantity`) VALUES
(1, 1, 1, 2),
(2, 1, 3, 3),
(3, 1, 4, 1),
(4, 2, 2, 10),
(5, 2, 3, 5),
(6, 3, 1, 2),
(7, 4, 2, 1),
(8, 5, 4, 6),
(9, 6, 1, 7),
(10, 7, 1, 8),
(11, 7, 4, 5),
(12, 8, 1, 3),(13, 9, 3, 7),
(14, 10, 2, 10),
(15, 11, 1, 4),
(16, 11, 2, 3),
(17, 12, 1, 7),
(18, 12, 3, 10),
(19, 12, 4, 4);
...
Рейтинг: 0 / 0
21.03.2018, 11:52
    #39618061
andyscj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить запрос из трех таблиц с сложной сортировкой.
По условиям вывода в таблицу:
Name - имя покупателя,
Result - два наибольших заказа через запятую, слева id
заказа и справа - сумма по заказу, колонка
TotalSumPerCustomer - показывает общую
сумму покупок клиента.
...
Рейтинг: 0 / 0
21.03.2018, 11:59
    #39618065
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить запрос из трех таблиц с сложной сортировкой.
andyscjName - имя покупателя,
Result - два наибольших заказа через запятую, слева id
заказа и справа - сумма по заказу, колонка
TotalSumPerCustomer - показывает общую
сумму покупок клиента.
Первый и последний пункты не должны вызывать проблем.
Второй пункт сложен только тем, что надо выбрать два заказа из всех. Это можно сделать только в подзапросе. Как это выполнить - читать FAQ: Выборка нескольких последних записей в неких группах . По получении - CONCAT для объединения id и суммы и GROUP_CONCAT для объединения двух записей в одно поле.

Всё.
...
Рейтинг: 0 / 0
21.03.2018, 15:30
    #39618310
andyscj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить запрос из трех таблиц с сложной сортировкой.
Akina,

Спасибо !
...
Рейтинг: 0 / 0
22.03.2018, 00:50
    #39618583
Sasha21
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить запрос из трех таблиц с сложной сортировкой.
andyscj, получилось, как Вы это реализовали?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить запрос из трех таблиц с сложной сортировкой. / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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