1

首先,对不起这个愚蠢的问题。

我正在寻找的是返回硬编码数据的“数据集”。我需要这个或者它是否是一个好的解决方案的原因是无关紧要的。我只是想知道我该怎么做。

我基本上想通过 a 返回SELECT这个“假”数据集。

DisplayText  Value
-----------  -----
Yes          true
No           false

我宁愿避免创建一个表,填充它,然后如果可以查询它。我在想有一个聪明的方法可以通过 来做到这一点SELECT,但我没有这样做的技能。

任何帮助,将不胜感激。是的,我知道这很愚蠢。让我们过去吧。=)

4

3 回答 3

3

这不是“聪明”,但这应该有效:

Select 'Yes' as DisplayText, 'true' as Value
UNION
SELECT 'No', 'false'
于 2012-08-06T23:10:21.157 回答
2

现在不一定适合您,但有一天,当然对于其他读者来说,在 SQL Server 2008 中,您可以使用新的值构造函数更简洁地执行此操作(并且随着您添加更多行,它会变得越来越简洁):

SELECT * FROM (VALUES('Yes','true'),('No','false')) AS x(DisplayText, value);

同样:此解决方案仅适用于 SQL Server 2008 及更高版本。

于 2012-08-07T00:13:58.493 回答
1

你可以这样做:

select DisplayText = 'Yes' , Value = 'true'
UNION ALL
select DisplayText = 'No'  , Value = 'false'

或者您可以在存储过程中执行此操作:

declare @temp table (
  DisplayText varchar(32) not null ,
  Value       varchar(32) not null ,
)

insert @temp values ( 'Yes' , 'true' )
insert @temp values ( 'No'  , 'false' )

select * from @temp

所以是的,你可以伪造那种东西。

于 2012-08-06T23:12:13.167 回答