I have so tables:Image may be NSFW.
Clik here to view.
and so data at Language table:
Image may be NSFW.
Clik here to view.
and so data at Text table:Image may be NSFW.
Clik here to view.
I have to return text for requested language if it exists and text for default language if it does not exist. Is it possible to do that in one query (no while
, please)?
Code:
DECLARE @CommentId bigint = 1--DECLARE @LanguageCode nvarchar(2) = 'en' -- "english text" returnsDECLARE @LanguageCode nvarchar(2) = 'ua' -- nothing at this momentSELECT t.CommentId ,t.TextId ,t.[Text] ,t.LanguageId ,RequestedLanguageId = @LanguageCodeFROM dbo.common_Text t INNER JOIN dbo.common_LanguageType l ON t.LanguageId = l.LanguageIdWHERE l.Code = @LanguageCode AND t.CommentId = @CommentId
Thank you.
ADDED:
If code requests a text in 'ua' (ukrainian) and this is no any text for this language, so it is going to search text for russian. if found - ok, if don't it will look for a text for english. List of languages can vary.