给出两组值:
var subset = new[] { 2, 4, 6, 8 };
var superset = new[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Run Code Online (Sandbox Code Playgroud)
如何确定是否superset包含所有元素subset?
我想出了这个:
superset.Intersect(subset).Count() == subset.Count()
Run Code Online (Sandbox Code Playgroud)
这是最合乎逻辑且最有效的方法吗?
我需要根据汽车关键字搜索返回一个独特的记录列表,如:"Alfa 147"
问题是,因为我有3辆"阿尔法"汽车,它会返回1 + 3条记录(阿尔法和147结果似乎为1,阿尔法结果为3)
编辑:
SQL-Server查询看起来像这样:
SELECT DISTINCT c.Id, c.Name /*, COUNT(Number of Ads in the KeywordAdCategories table with those 2 keywords) */
FROM Categories AS c
INNER JOIN KeywordAdCategories AS kac ON kac.Category_Id = c.Id
INNER JOIN KeywordAdCategories AS kac1 ON kac.Ad_Id = kac1.Ad_Id AND kac1.Keyword_Id = (SELECT Id FROM Keywords WHERE Name = 'ALFA')
INNER JOIN KeywordAdCategories AS kac2 ON kac1.Ad_Id = kac2.Ad_Id AND kac2.Keyword_Id = (SELECT Id FROM Keywords WHERE Name = '147')
Run Code Online (Sandbox Code Playgroud)
我的LINQ查询是:
var query …Run Code Online (Sandbox Code Playgroud)