#mysql #sql
Вопрос:
У меня есть следующие две таблицы
Название таблицы: категория
categoryid Categoryname
1 Mobiles
2 Laptops
Название таблицы: продукт
productid categoryid productname
1 1 Nokia
2 2 Dell
3 1 Mi
4 1 Samsung
5 2 Lenovo
Теперь я ищу один оператор SQL, который должен извлекать все в одном операторе sql.
Ожидаемый результат приведен ниже:
recordtype categoryid productid category productname
Category 1 0 Mobiles
Product 1 1 Nokia
Product 1 3 Mi
Product 1 4 Samsung
Category 2 0 Laptops
Product 2 2 Dell
Product 2 5 Lenovo
Ответ №1:
Вы можете использовать union all
:
select 'category' as recordtype, categoryid, 0 as productid, categoryname as category, null as product
from category
union all
select 'product', categoryid, productid, null, productname
from product;
Комментарии:
1. Позвольте мне проверить это.