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

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

Код: sql
1.
2.
3.
4.
5.
SELECT SUM ( amount ), categories.title 

FROM products LEFT JOIN categories  ON products.id = categories.product_id 

GROUP BY categories.title



Результат :
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39884781
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отсортировать по убыванию посчитанного поля и взять первую запись, делов-то...
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39884784
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Настоящие профи не ищут простых путей.
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39885039
sql_junior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, спасибо , вы так имели ввиду ?

( так работает правильно, выводит два столбца, одну строку )

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT *

FROM (
		SELECT SUM(amount) AS amount, c.title

		FROM products p INNER JOIN categories c ON p.id = c.product_id 

			GROUP BY c.title
     ) x	
	 
ORDER BY x.amount DESC LIMIT 1 




попробовал ещё одним методом

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT MAX(amount) AS amount

FROM(
		SELECT SUM(amount) AS amount, c.title

		FROM products p INNER JOIN categories c ON p.id = c.product_id 

			GROUP BY c.title
     ) x



но так выводит только столбец - amount, а - title не знаю как прицепить.

Мож Вы знаете как надо правильно ? пример приведёте ?, если не трудно
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39885149
paver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sql_junior,
мсье знает толк в извращениях ))
А что помешало добавить ORDER - LIMIT к изначальному запросу (в котором LEFT лишний, кстати)?
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39885236
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
SELECT count(product.id) as ccc, categories.title 
FROM products INER JOIN categories  ON products.id = categories.product_id 
GROUP BY categories.title
ORDER BY ccc DESC LIMIT 1  
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39885511
sql_junior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ScareCrow, спасибо, но так запрос выводит число - 61, а надо - 23230, но если поменять

product.id на product.amount, точнее просто amount, тогда всё работает правильно.

paver, Вы правы ), LEFT JOIN - выводит неправильные данные,

он выводит число 23920 ( а надо 23230 ), причём без названия категории, т.е какую-то мусорную строку.

Спасибо всем за ответы.
...
Рейтинг: 0 / 0
Выбрать категорию, с наибольшим количеством товаров
    #39885514
sql_junior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Работающие запросы :

1.

Код: sql
1.
2.
3.
4.
5.
6.
SELECT SUM(amount) AS amount, c.title

		FROM products p INNER JOIN categories c ON p.id = c.product_id 
			GROUP BY c.title

ORDER BY amount DESC LIMIT 1



2.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT *

FROM (
		SELECT SUM(amount) AS amount, c.title
		FROM products p INNER JOIN categories c ON p.id = c.product_id 
			GROUP BY c.title
     ) x	
	 
ORDER BY x.amount DESC LIMIT 1 
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выбрать категорию, с наибольшим количеством товаров
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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