|
|
|
| Есть таблицы с 2 полями: Деталь (числовое поле); Примечание (текстовое поле).
Может быть так, что для одной и той же детали есь несколько примечаний (т.е.3 строки с повторяющейся запчасть и разными примечаниями).
Как создать запрос, в котором единоразово будет отображаться каждая деталь, а каждое примечание будет в отдельном поле? т.е.таблицу необходимо перевернуть (сейчас значения примечаний распооржены по вертикали, а необходимо их расположить по горизонтали).
Подскажите пожалуйста, как лучше сделать? | |
|
| |
|
|
|
| А двумя можно?
1.
SELECT tblParent.IDParent, tblParent.ParentName, acbGenPOSID(tblParent.IDParent) AS Num, tblChild.ChildName INTO tblTemp
FROM tblParent LEFT JOIN tblChild ON tblParent.IDParent=tblChild.IDParent
WHERE (((acbGenPOSID())<>False))
ORDER BY tblParent.IDParent, tblChild.IDChild;
|
2.
TRANSFORM First(tblTemp.ChildName) AS [First-ChildName]
SELECT tblTemp.IDParent, tblTemp.ParentName
FROM tblTemp
GROUP BY tblTemp.IDParent, tblTemp.ParentName
PIVOT tblTemp.Num;
|
И работает быстрее значительно. | |
|
| |
|
|
|
| А сами таблицы можете скинуть? | |
|
| |
|
20 Кб. |
|
| Вот они:
Оказывается можно и одним запросом, если заготовить табличку заранее и добавить еще одну функцию в модуль:
PS. Пришлось удалить большую часть родителей с детьми, в 50 кб на влезали. | |
|
| |
|