| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > сортировка ORDER BY или GROUP BY не то удаляет... |
| Автор: DRUG_ADDICT 18.4.2009, 13:23 | ||||||||||
| Привет всем начит... вот есть запрос у меня:
вот только не дафно заметил что запрос работает мягко говоря не корректно ну допустим есть запрос:
и есть поля в этой tablename:
это ^_^ чтобы вам проверить/// а вот так понятнее я думаю:
как видно в поле data поля дублируются... если применить здесь GROUP BY к полю data, причем в запросе иметь ORDER BY сортировку DESC по полю ID иииии даже если SELECT *, MAX(ID) и даже если задать условие для GROUP BY HAVING ID < 100000000000000000000000000 с этой группировкой GROUP BY результат будет следующий:
вроде бы все правильно но мне кажется что тут... что то все таки не так короче говоря именно по этому у меня тут не выходит написать одну штуку для сайта... помогите с этим разобраться пожалуйста... c этим GROUP BY или с ORDER BY и DESC не знаю... просто надо сделать так (7,6,5,3) ?чтобы GROUP BY не удалял самые первые найденые им дубликаты а самые последние? ээээ о чем это я??? PS. я не хачу эту проблему решать с помощью циклов или что то типа того, таКОго гроМОского, охото все это дело решить одним SQL запросом... спасибо большое за ранее... |
| Автор: ТоляМБА 18.4.2009, 14:25 |
| Многобукафф! DRUG_ADDICT, в двух словах: что ты хочешь получить? какой результат? |
| Автор: DRUG_ADDICT 18.4.2009, 14:39 |
| я не знаю как это объяснить в двух словах, может быть я дурак? |
| Автор: DRUG_ADDICT 18.4.2009, 15:35 |
| ТоляМБА да фу ты блин ваще...... ПАСИБО! |
| Автор: DRUG_ADDICT 20.4.2009, 02:46 | ||||||||
|
| Автор: ТоляМБА 20.4.2009, 08:29 |
| DRUG_ADDICT, ещё бы у тебя заработало. Выводишь все поля из обеих таблиц: а группировку делаешь по одному: Описывай обе таблы с небольшим заполнением как в 1-м посте и говори что хочешь получить в результате. |
| Автор: DimW 20.4.2009, 08:31 |
| DRUG_ADDICT, ты разницу улавливаешь? и |
| Автор: DRUG_ADDICT 20.4.2009, 08:56 | ||||
DimW, а ты читать умеешь? я написал как это все сделать вот на том запросе и привел его как пример... на самом деле у меня так:
ТоляМБА, ну там много че есть... в общем групировать надо по двум таблицам я так понял, ага... ладно пойду попробуй... скоро вернусь ждите!
Добавлено через 12 минут и 18 секунд подождите... но как я буду группировать по второй табличке... если там дубликатов нет и быть не может и группировать там не чего... вот оно: c.torrent = t.fid; в поле t.fid таблица `torrents` дубликатов нет и это поле инексовое как бы так, а поле c.torrent в таблице `comments` имеет множество дубликатов, которое надо группировать то есть/или удалить (не знаю как точно это звучит) и вывести это все отсортировав ORDER DESC конечно по ключевому (index (или как оно называется...)) полю c.id которое в таблице comments... |
| Автор: DimW 20.4.2009, 09:22 | ||||
умею, а вот ты грамотно излогать свои мысли нет, такое чувство как будто на удаве быдлокодерами воспитан...
значит сначала группируй, а потом связывай.
|
| Автор: DRUG_ADDICT 3.7.2009, 11:09 |
| DimW спасибо все работает! Добавлено через 39 секунд поставил бы респект но не достаточно сообщений |