0
我有一個語言實體,用於存儲文本和它所使用的語言代碼。我需要獲取用戶所選語言的所有文本列表,除非該語言沒有特定的文本行,在這種情況下,我需要獲取英文版本。如何用這個做謂詞?
我的表是基本上是這樣的,在SQL方面:
DECLARE TABLE Languages
(
textId int,
languageCode char(2),
text varchar(2000)
)
與這兩個文本ID和語言代碼作爲我的主鍵。
在SQL中,我基本上做到這一點:
SELECT ISNULL(l.text, e.text)
FROM
(SELECT * FROM Languages WHERE languageCode = 'en') t
LEFT JOIN
(SELECT * FROM Languages WHERE languageCode = @selectedLanguage) l
ON l.textId = t.textId
這應該給我到底1個文本每個文本ID的;如果找不到所選語言,則使用英語。
是否有可能使用NSPredicate和FetchedResultsController做這樣的事情?我發現了關於SUBQUERY關鍵字的一些信息,但沒有真正解釋如何將它與NSPredicate一起使用。
看到我的博客文章:[「子彈是什麼?」](http://funwithobjc.tumblr.com/post/2726166818/what-the-heck-is-subquery) – 2011-04-06 17:15:14