Я пытаюсь исправить набор результатов, возвращаемый определенным запросом.В запросе используются следующие таблицы:
Inventory:
+--------------+---------------+
| Inventory_ID | Inventory_MFN |
+--------------+---------------+
| 302 | 0170315 |
+--------------+---------------+
InventoryItem:
+---------+-----------------+--------------+
| Item_ID | Item_Serial_Num | Inventory_ID |
+---------+-----------------+--------------+
| 1156 | 10095-001 | 302 |
| 1157 | 10095-002 | 302 |
| 25433 | 10095-003 | 302 |
| 30663 | 10095-004 | 302 |
+---------+-----------------+--------------+
Он также использует представление, которое возвращает результат, подобный следующему:
InventoryQuantity(view):
+--------------+-------------+-------------------+
| Inventory_ID | Location_ID | Location_Quantity |
+--------------+-------------+-------------------+
| 302 | 1 | 2 |
| 302 | 31 | 1 |
| 302 | 11 | 1 |
+--------------+-------------+-------------------+
Это запрос:
SELECT i.Inventory_ID, ii.Item_Serial_Num
FROM Inventory i
FULL JOIN InventoryItem ii ON i.Inventory_ID = ii.Inventory_ID
FULL JOIN InventoryQuantity iq ON i.Inventory_ID = iq.Inventory_ID
WHERE i.Inventory_MFN = '0170315'
Он возвращает набор результатов следующим образом:
+--------------+-----------------+
| Inventory_ID | Item_Serial_Num |
+--------------+-----------------+
| 302 | 10095-001 |
| 302 | 10095-001 |
| 302 | 10095-001 |
| 302 | 10095-002 |
| 302 | 10095-002 |
| 302 | 10095-002 |
| 302 | 10095-003 |
| 302 | 10095-003 |
| 302 | 10095-003 |
| 302 | 10095-004 |
| 302 | 10095-004 |
| 302 | 10095-004 |
+--------------+-----------------+
Но на самом деле мы хотим, чтобы набор результатов выглядел так:
+--------------+-----------------+
| Inventory_ID | Item_Serial_Num |
+--------------+-----------------+
| 302 | 10095-001 |
| 302 | 10095-002 |
| 302 | 10095-003 |
| 302 | 10095-004 |
+--------------+-----------------+
Из-за дизайна этого конкретного приложения, измененияЯ могу сделать так, чтобы структура запроса была очень ограниченной.Из того, что я могу сказать, это мои варианты:
- Я могу изменить таблицы и представления, на которые есть ссылки в запросе.
- Я могу изменить представление или создать новое представление.
- Я могу добавить несколько дополнительных столбцов в таблицы / представление для присоединения.
- Я могу разместить подзапрос внутри одного (или обоих) объединений.
Что вы, ребята, думаете?Можно ли это сделать?