Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该如何使用SQL Server中的查询(如Oracle中的“select name from dual”)获取虚拟列?_Sql_Sql Server_Reporting Services_Ssrs 2008 - Fatal编程技术网

我应该如何使用SQL Server中的查询(如Oracle中的“select name from dual”)获取虚拟列?

我应该如何使用SQL Server中的查询(如Oracle中的“select name from dual”)获取虚拟列?,sql,sql-server,reporting-services,ssrs-2008,Sql,Sql Server,Reporting Services,Ssrs 2008,我正在使用SQL Server Reporting Services 2008 R2。 我设计了一个报表,它以StartDate、EndDate、PayType作为参数值来运行报表数据集1。 这些参数值是从另一个数据集查询传递的。 所以我编写了另一个查询作为dataset2 SELECT DISTINCT bb_propdt AS [Start Date], bb_propdt AS [End Date], CASE WHEN bbprop.bb_paytype = '1' THEN 'P

我正在使用SQL Server Reporting Services 2008 R2。 我设计了一个报表,它以StartDate、EndDate、PayType作为参数值来运行报表数据集1。 这些参数值是从另一个数据集查询传递的。 所以我编写了另一个查询作为dataset2

SELECT DISTINCT 
bb_propdt AS [Start Date],
bb_propdt AS [End Date],

CASE 
WHEN bbprop.bb_paytype = '1' THEN 'PDC' 
WHEN bbprop.bb_paytype = '2' THEN 'NoPDC' 
WHEN bbprop.bb_paytype = '3' THEN 'ECS' 
ELSE 'NA'
END AS [Pay Type] 

FROM         
bbprop
问题是,它向我展示了所有不同的日期,到目前为止还不错。 但它也向我展示了不同的薪酬类型。 所以在一个参数下拉列表中,我得到了PDC,NoPDC,ECS的数量。 我只想要3个值,PDC,NoPDC,ECS。 我可以使用另一个数据集来解决这个问题,但我不想要更多的数据集。 我一直在寻找

select PDC, NoPDC, ECS from dual;
在SQL Server中。但是没有这样的事情

下面的图片将帮助您轻松解决问题

这是给我看的日期,没问题


但这里我只需要三个值,如PDC、NoPDC、ECS。

使用此查询填充数据集:

select PayType = 'PDC'
union all
select PayType = 'NoPDC'
union all
select PayType = 'ECS'

设置参数可用值时,将其指向此数据集,以显示值和标签

如果查询/数据集是一组已知值,也可以使用该查询/数据集执行此操作,定义参数时只需使用可用值->指定值选项:


您不需要对此进行单独查询吗?是的,我可以再使用一个数据集,但我不需要。所以我只需要任何查询,比如从dual中选择PDC、NoPDC、ECS。或在现有查询中进行任何其他修改(如果可能)。请尝试以下操作:选择PDC UNION选择NoPDC UNION选择ECS。你不需要双重身份。把工会分开,它不起作用。我试过这个。我也尝试过使用子查询来获取不同的值,但是子查询返回的值不止一个。显然,您不能在一个查询中完成,您的数据集中必须有两个结果集,或者在获取结果后在客户端执行一些操作,在绑定combobox以获得不同的支付类型并绑定第二个combo之前。是的,它可以工作。不错。我在找那张假桌子。谢谢。很酷,很高兴能帮上忙。。。我想到了另一个可能适用的选项-添加了更多细节。是的。我也这么做了。使用具有适当值的所需标签。