|
|
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
Добрый день. Помогите, пожалуйста, составить запрос для MySQL. Есть 2 таблицы: mat и mat_documents Нужно отобразить максимальный номер документа ( с данными всей строки ) в разрезе групп материалов (mat.groupe). Более понятно я максимально набросал в примере в приложении к сообщению. Практически удалось сформировать запрос: SELECT max(b.docnu), a.title, a.groupe,b.amount FROM mat_documents a RIGHT JOIN mat d ON a.id_mat=b.id_mat GROUP BY a.groupe Проблема у меня осталась в том, что в моём запросе выбирается только максимальный номер документа, а для остальных данных строки нельзя применить max (например, title). Моя задача должна решаться как-то изящнее, но никак не получается... помогите :) Заранее спасибо! P.S. Все подробности в файле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2015, 16:10:02 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
Шаблон: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2015, 17:31:47 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
Пардон, строка улетела... Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2015, 17:33:05 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
AkinaПардон, строка улетела... Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. Не получается что-то... Поля "t1.field2 = t3.field2" - field2 нет в таблице t1. SELECT t1.* - Помимо t1 нужно вывести данные ещё из таблицы t2. Уделите pls ещё минутку своего внимания моей проблеме, что-то запутался совсем. P.S. Немного напутал в своём файле с SQL-запросом моим, скорректировал во вложении. SELECT max(a.docnu), b.title, b.groupe,a.amount FROM mat_documents a RIGHT JOIN mat b ON a.id_mat=b.id_mat GROUP BY b.groupe ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2015, 18:45:01 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
plosion87 field2 нет в таблице t1Это, блин, ШАБЛОН! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2015, 19:59:34 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
plosion87Добрый день. Помогите, пожалуйста, составить запрос для MySQL. Есть 2 таблицы: mat и mat_documents Нужно отобразить максимальный номер документа ( с данными всей строки ) в разрезе групп материалов (mat.groupe). Более понятно я максимально набросал в примере в приложении к сообщению. Практически удалось сформировать запрос: SELECT max(b.docnu), a.title, a.groupe,b.amount FROM mat_documents a RIGHT JOIN mat d ON a.id_mat=b.id_mat GROUP BY a.groupe Проблема у меня осталась в том, что в моём запросе выбирается только максимальный номер документа, а для остальных данных строки нельзя применить max (например, title). Моя задача должна решаться как-то изящнее, но никак не получается... помогите :) Заранее спасибо! P.S. Все подробности в файле. 7543220 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2015, 16:11:22 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
Akinaplosion87 field2 нет в таблице t1Это, блин, ШАБЛОН! Ребят, составил запрос по предложенному шаблону, результат тот же, что и был первоначально в моём запросе. Выводится только максимальный номер, а мне нужна вся выборка по максимальному номеру. Я не очень спец в SQL, может укажете на ошибку, где допущена. SELECT b . * , field3 FROM mat AS b JOIN ( SELECT t2.id_mat, MAX( t2.docnu ) AS field2, t2.amount AS field3 FROM mat_documents AS t2 GROUP BY id_mat ) AS t3 ON b.id_mat = t3.id_mat GROUP BY b.groupe ORDER BY `b`.`id_mat` ASC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2015, 12:07:23 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
plosion87Ребят, составил запрос по предложенному шаблонугде в шаблоне внешний групбай? где у вас условие связи по двум полям? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2015, 13:21:40 |
|
||
|
Помогите составить запрос (JOIN, MAX и Groupe By)
|
|||
|---|---|---|---|
|
#18+
tanglirplosion87Ребят, составил запрос по предложенному шаблонугде в шаблоне внешний групбай? где у вас условие связи по двум полям? Я же приложил пример, в моей задаче исходные данные такие, что шаблонный пример пришлось модифицировать, поэтому отвечая на Ваши вопросы: 1)Нужна группировка по полю группы материалов, которая есть только в таблице mat, поэтому пришлось использовать помимо внутренней, ещё и внешнюю группировку. 2)По поводу условия связи его тоже нету, т.к. поле MAX(t2.field2) AS field2 - есть только в одной таблице mat_documents, поэтому с чем его связывать не очень понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2015, 14:59:02 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=119&tid=1832489]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 419ms |

| 0 / 0 |
