X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Группировка записи
autotype
autotype
Topic Starter сообщение 13.9.2010, 22:35; Ответить: autotype
Сообщение #1


есть к примеру запись в базе

# | имя | возвраст
1 | вася | 21
2 | петя | 22

при испльзование MIN(возвраст)
бывает часто выдает запись

2 | петя | 21

П.С. все персонажи выдуманные любые совпадения случайны :)

полный запрос

SELECT tire_catalog.*, tire_price.*, min(tire_price.price) AS minprice
FROM tire_catalog, tire_price
WHERE tire_catalog.id = tire_price.id_catalog
GROUP BY markatech, modeltech, sh, pr, ra, shyp
HAVING markatech = 'nokian'
ORDER BY minprice ASC
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 14.9.2010, 0:20; Ответить: ZiTosS
Сообщение #2


кипятильник,
Примерно понял в чем проблема, но без пачки данных и пива здесь не разобраться. Про пиво шучу конечно :) Вообщем покажи данные в личку и распиши запрос, что он у тебя ДОЛЖЕН делать.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
autotype
autotype
Topic Starter сообщение 14.9.2010, 11:12; Ответить: autotype
Сообщение #3


tire_catalog это база с наименованиям товара.
tire_price это база с ценами и дополнительной инфой

tire_price есть одинаковые записи о товаре но поставщик (склад) к примеру разные и при груперовки оно выдает минимальную цену а поставщика любого тоесть не того у кого мин цена.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 14.9.2010, 11:42; Ответить: ZiTosS
Сообщение #4


кипятильник, сейчас не успеваю, вечером приду, помогу
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
gaaarfild
gaaarfild
сообщение 14.9.2010, 15:24; Ответить: gaaarfild
Сообщение #5


Рекомендую не использовать конструкцию '*'. Лучше явно указывать поля.
Очень большие проблемы могут возникать при изменении структуры таблиц в будущем.
Вообще запрос с звездочкой считается табу среди программистов, только если ты просто не хочешь вытащить все для показа.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 14.9.2010, 23:30; Ответить: ZiTosS
Сообщение #6


кипятильник, вот такой вариант должен прокатить:
SELECT a.*,b.pole_naimenivania
FROM (SELECT * FROM tire_price ORDER BY price) a, tire_catalog b
WHERE b.id=a.id_catalog AND markatech = 'nokian'
GROUP BY a.id_catalog
ORDER BY a.price

Не понимаю, зачем ты группируешь по куче полей, если можно сгруппировать по id_catalog, как я понял там же разные товары с разными параметрами.
Если нет, то группируй по нужным полям, должно получаться всё хорошо.
Проблема заключалась в том, что при группировке выбирается за основу первая запись с которой группируется и к ней пристыковываются поля, которые используются с GROUP BY.
Что я сделал -> Сначала сделал выборку отсортированную по цене(price), а затем с этой выборкой работаю -> группирую по товару(id_catalog) и состыковываю с таблицей наименования товаров.


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
autotype
autotype
Topic Starter сообщение 14.9.2010, 23:52; Ответить: autotype
Сообщение #7


можно сгруппировать по id_catalog

там по id_catalog не получиться только так

>FROM (SELECT * FROM tire_price ORDER BY price) a, tire_catalog b
не могу понять что обозначают в этой строке a и b
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
autotype
autotype
Topic Starter сообщение 15.9.2010, 0:06; Ответить: autotype
Сообщение #8


ZiTosS Работает!!!, я в шоГе спасибо!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 15.9.2010, 0:37; Ответить: ZiTosS
Сообщение #9


кипятильник,
>FROM (SELECT * FROM tire_price ORDER BY price) a, tire_catalog b
не могу понять что обозначают в этой строке a и b

в данном коде a и b это просто алиасы имен таблиц, чтобы длинные имена не писать. При создании алиасов полей нужно обязательно указывать оператор AS, в алиасах таблиц данный оператор можно опустить.
Рад был помочь :) Всегда пожалуйста!

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыСемантическое ядро 9$/500 фраз (мутаген, группировка...)
248 OptimusPrime 131653 23.12.2021, 6:30
автор: VostrVL
Открытая тема (нет новых ответов) Семантическое ядро от Yadrex - сбор/группировка семантического ядра
3 yadrex 7871 28.11.2019, 17:15
автор: yadrex
Открытая тема (нет новых ответов) Требуется несколько человек для записи
Интересная работа
5 sheva7 2055 29.4.2019, 20:45
автор: Arwis
Открытая тема (нет новых ответов) Ядро Пузатское | Составление семантики: парсинг, чистка, группировка, тз
Составление семантики: парсинг, чистка, группировка, тз
2 msbot 3309 15.1.2018, 13:41
автор: msbot
Открытая тема (нет новых ответов) Составление семантического ядра: парсинг, чистка, группировка
недорого, качественно, в срок
9 abafons 5481 24.12.2017, 8:04
автор: abafons


 



RSS Текстовая версия Сейчас: 20.4.2024, 2:11
Дизайн