2015-11-19 2 views
0

Я разработал базу данных в MS Access 2013. Мне нужно сделать отчет из двух таблиц: inventory_type, инвентарь (и некоторый опыт в T-SQL)MS Access Поворот запрос по PIVOT ТРАНСФОРМ

таблицу инвентаризации:

id 
inv_type(FK of inventory_type.id) 
inv_name, etc. 

inventory_type стол:

id 
type_name 

Я сделал простой запрос с GROUP BY:

SELECT it.type_name AS [Inventory name], Count(i.ID) AS Quantity 
FROM inventory_type AS it INNER JOIN inventory AS i ON it.ID = i.inv_type 
GROUP BY it.type_name; 

Результат этого запроса:

Inventory Name | Quantity 
VideoCamera   3 
PC     5 
..... 

Но результат должен быть таким:

Quantity | VideoCamera | PC 
Quantity |  3   5 

Я пытался сделать так:

TRANSFORM Count(it.ID) AS Quantity 
SELECT "Quantity" 
FROM inventory_type AS it INNER JOIN inventory AS i ON it.ID = i.inv_type 
GROUP BY it.type_name 
PIVOT it.type_name; 

Но результат не совсем то, что я ожидал:

Quantity | VideoCamera | PC 
Quantity  3    
Quantity     5 

Может ли кто-нибудь помочь мне в этом, не может понять семантику доступа к MS.

ответ

0

Просто удалите type_name из GROUP BY пункт:

TRANSFORM Count(it.ID) AS CountOfQuantity 
SELECT 'Quantity' AS Quantity 
FROM inventory_type AS it INNER JOIN inventory AS i ON it.ID = i.inv_type 
GROUP BY 'Quantity' 
PIVOT it.type_name; 
Смежные вопросы