Jag har en tabell som innehåller information på olika språk
2bca71f1-bbb4-4158-8112-4cf41f06e932 1033 Aluminium
d12c5f06-07ae-4891-9aa6-728b82579369 1033 Wood
d12c5f06-07ae-4891-9aa6-728b82579369 1053 Trä
0dbeb888-4285-4199-9dd4-8b3c5140b2ea 1033 Steel
0dbeb888-4285-4199-9dd4-8b3c5140b2ea 1053 Stål
072e0455-6bb5-4865-b5bd-c9863e4568bb 1033 Concrete
072e0455-6bb5-4865-b5bd-c9863e4568bb 1053 Betong
Det jag vill är att kunna hämta ut de olika värderna baserade på LCID. Så om jag vill ha det på svenska så skall LCID = 1053. Men sedan är det ju så att man kan "glöma" att skriva in något värde på ett språk (som jag gjort med Aluminium) och då vill jag att man skall hämta ut värdet men i basspråket (1033).
Så här har jag löst det, men skulle vilja få till det med en SELECT-sats och där med öka prestandan lite.
select *
from material
where lcid = 1053
union
select *
from material
where lcid = 1033 and identifier not in(select identifier
from material where lcid=1053)
Ger resultatet.
D12C5F06-07AE-4891-9AA6-728B82579369 1053 Trä
0DBEB888-4285-4199-9DD4-8B3C5140B2EA 1053 Stål
072E0455-6BB5-4865-B5BD-C9863E4568BB 1053 Betong
2BCA71F1-BBB4-4158-8112-4CF41F06E932 1033 Aluminium
- M