1

SPは、リストタイプのコンマ区切り値である入力値ListType_IDsを取ります。

create procedure test
@ListType_IDs varchar(255) = null
as
declare @IsGetDirectReports bit
declare @IsGetDirectReportsManagers bit
declare @IsGetAllManagers bit
declare @IsGetFullTeamUnderManager bit
--I have to initialize the above flags based on the value of list type IDs

たとえば、ListType_IDs=5,6,7とします。

@ListType_IDsの値が5の場合、@ IsGetDirectReports = 1

@ListType_IDsの値が6の場合、@ IsGetDirectReportsManagers = 1

@ListType_IDsの値が7の場合、@ IsGetFullTeamUnderManager = 1

単純なSQLコードを使用してそれを達成する必要があります。どなたか手伝ってください。前もって感謝します。

4

1 に答える 1

2
IF CHARINDEX(',5,' , ',' +@ListType_IDs + ',') > 0
SELECT @IsGetIderctReports = 1

IF CHARINDEX(',6,' , ',' +@ListType_IDs + ',') > 0
SELECT @IsGetDirectReportsManagers = 1

IF CHARINDEX(',7,' , ',' +@ListType_IDs + ',') > 0
SELECT @IsGetFullTeamUnderManager = 1

区切りリストをデータベース列に格納するのは本当に悪いことですか?今、私たちは知っています。

于 2013-01-22T13:09:50.787 に答える