我正在尝试将消息中的表中的特定列打印给用户。这是表格示例
StateCode | EffectiveDate | ExpirationDate
---------------------------------------------
AK | 2011-12-31 | 2012-12-31
AL | 2011-12-31 | 2015-12-31
Run Code Online (Sandbox Code Playgroud)
所有州均如此。我想要做的是选择 GETDATE() 不在有效日期和到期日期之间并向用户打印一条消息。我的 Select 语句有效,但如果返回多个状态,它就会崩溃。有什么方法可以保存列表然后打印它吗?或者我可以采取的另一种方法
这是我现在使用的选择查询,适用于返回的 1 个状态
DECLARE @missingStates varChar(30)
SET @missingStates = Select StateCode FROM StateTable
WHERE GETDATE() NOT Between StateTable.EffectiveDate AND StateTable.ExpirationDate
PRINT 'States Missing Effective Models'
PRINT @missingStates
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助
您必须将多个值组合成一个变量:
DECLARE @missingStates varChar(30)
SET @missingStates = ''
Select @missingStates = @missingStates + Code + ' ' FROM StateTable
WHERE GETDATE() NOT Between StateTable.EffectiveDate AND StateTable.ExpirationDate
PRINT 'States Missing Effective Models'
PRINT @missingStates
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25225 次 |
| 最近记录: |