У меня есть таблица: attb
------------------------------------------------
Id | Name | Code | Attribute | Amount
------------------------------------------------
1 | AV | 123 | Alpha | 233
------------------------------------------------
2 | TV | 122 | Beta | 235
------------------------------------------------
3 | TV | 123 | Gama | 238
------------------------------------------------
4 | CD | 122 | Beta | 239
------------------------------------------------
5 | TP | 122 | Beta | 240
------------------------------------------------
6 | RX | 123 | Alpha | 241
------------------------------------------------
Я запрашиваю это как:
select id,name, code, attribute, amount
from attb
where code = 123 and attribute='Alpha'
UNION
select id,name, code, attribute, amount
from attb
where code = 122;
Возвращает следующее
Id | Name | Code | Attribute | Amount
------------------------------------------------
1 | AV | 123 | Alpha | 233
------------------------------------------------
2 | TV | 122 | Beta | 235
------------------------------------------------
4 | CD | 122 | Beta | 239
------------------------------------------------
5 | TP | 122 | Beta | 240
------------------------------------------------
6 | RX | 123 | Alpha | 241
------------------------------------------------
Есть ли способ объединить два запроса вместо использования оператора UNION? Или какая-нибудь лучшая реализация?