Включить столбец с именем поля в запрос объединения - PullRequest
1 голос
/ 05 июля 2019

У меня есть доступ к таблице, которая содержит все критерии моих продуктов, и мне нужно создать запрос, который поместит всю информацию о критериях в один столбец.Для этого я использовал запрос Union.Теперь я хотел бы иметь имя поля критериев в столбце рядом с ним.

Возможно ли получить этот результат?

Извините за недостаток знаний, чтобы поставить этот поств плохом формате и благодарю вас за любую помощь, которую вы можете оказать мне.

Моя таблица имеет следующую структуру:

+------+--------------+--------------+--------------+-------------+
| P/N  |  Criteria 1  |  Criteria 2  |  Criteria 3  |  Criteria 4 |
+------+--------------+--------------+--------------+-------------+
| 12A  |  blue        |  plastic     |  Box         |  5mm        |
| 20C  |  neutral     |  metal       |  Pack        |  120mm      |
+------+--------------+--------------+--------------+-------------+

У меня есть объединенный запрос в Access сследующий результат:

+------+------------+
| P/N  |  Criteria  |
+------+------------+
| 12A  |    blue    |
| 12A  |    plastic |
| 12A  |    Box     |
| 12A  |    5mm     |
| 20C  |    neutral |
| 20C  |    metal   |
| 20C  |    pack    |
| 20C  |    120mm   |
+------+------------+

Я хочу получить конечный результат, который мне нужен - это таблица в этом формате:

+------+-----------+----------------+
| P/N  |  Criteria |  Criteria Name |
+------+-----------+----------------+
| 12A  |  blue     |  Criteria 1    |
| 12A  |  plastic  |  Criteria 2    |
| 12A  |  Box      |  Criteria 3    |
| 12A  |  5mm      |  Criteria 4    |
| 20C  |  neutral  |  Criteria 1    |
| 20C  |  metal    |  Criteria 2    |
| 20C  |  pack     |  Criteria 3    |
| 20C  |  120mm    |  Criteria 4    |
+------+-----------+----------------+

1 Ответ

1 голос
/ 05 июля 2019

Предполагая, что ваш запрос объединения выглядит примерно так -

select t.[p/n], t.[criteria 1] as criteria
from yourtable t
union all
select t.[p/n], t.[criteria 2] as criteria
from yourtable t
union all
select t.[p/n], t.[criteria 3] as criteria
from yourtable t
union all
select t.[p/n], t.[criteria 4] as criteria
from yourtable t

Затем вы можете добавить имя поля следующим образом:

select t.[p/n], t.[criteria 1] as criteria, 'Criteria 1' as [Criteria Name]
from yourtable t
union all
select t.[p/n], t.[criteria 2] as criteria, 'Criteria 2' as [Criteria Name]
from yourtable t
union all
select t.[p/n], t.[criteria 3] as criteria, 'Criteria 3' as [Criteria Name]
from yourtable t
union all
select t.[p/n], t.[criteria 4] as criteria, 'Criteria 4' as [Criteria Name]
from yourtable t
...