sqlite如何选择使用其他选择的结果?

1 c# sqlite

在SQLite中使用C#我想做

SELECT * FROM media WHERE mediaId= for each
  SELECT mediaId FROM fav WHERE userId=1 ORDER BY indx DESC LIMIT 0, 100
Run Code Online (Sandbox Code Playgroud)

语法明显不正确.我不知道如何在另一个select语句中使用param.

Ale*_*lli 5

最直接翻译您的无效语法:

SELECT * FROM media WHERE mediaId IN
  (SELECT mediaId FROM fav WHERE userId=1)
ORDER BY indx DESC LIMIT 0, 100
Run Code Online (Sandbox Code Playgroud)

一个更好的风格(可能更快速,但我没有测量:

SELECT media.* FROM media
JOIN fav USING (mediaId)
WHERE fav.userId=1 
ORDER BY media.indx DESC LIMIT 0, 100
Run Code Online (Sandbox Code Playgroud)

这些都是标准的SQL,顺便说一句,特别是第二种形式往往适用于任何关系数据库实现.