我有一个表格Channel
,其中包含所有可用频道,还有另一个表格Channel_availableSpecs
,我将频道 ID 链接到规格 ID。我已经做了一个inner join
来获取频道名称。
我需要做的是基于checkedlistbox
C#中的一个我想填充具有所选规格的所有可用频道的列表。
我在 SQL 中编写了以下查询并且它有效,但是如果它们满足条件,它会显示所有记录,因此我有channel one
四次,因为它具有规格 1、2、4 和 5。
select c.Name
from [dbo].[Channel_availableSpecs] asp
inner join [dbo].[Channel] c on asp.Channel_Id = c.ID
where asp.ChennelSpec_Id IN ('1' , '2','4' ,'5')
所以我试图按频道id
对它们进行分组以便能够查看一次频道,所以我在确信它不起作用的情况下进行了尝试。
select c.Name
from [dbo].[Channel_availableSpecs] asp
inner join [dbo].[Channel] c on asp.Channel_Id = c.ID
where asp.ChennelSpec_Id IN ('1' , '2','4' ,'5') Group by asp.Channel_Id
您能否帮助修复它以及如何处理规范 ID(而不是 1、2、4 和 5)的动态列表以使其成为条件。
谢谢!
尝试使用子查询https://community.modeanalytics.com/sql/tutorial/sql-subqueries/
select subqueryResult.Name from
(
select c.Name, asp.Channel_Id
from [dbo].[Channel_availableSpecs] asp
inner join [dbo].[Channel] c on asp.Channel_Id = c.ID
where asp.ChennelSpec_Id IN ('1' , '2','4' ,'5')
)
as subqueryResult
group by subqueryResult.Channel_Id
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句