2017-11-21 28 views
1

//問題:マルチプルIDを選択し、それらのIDを使用してテーブルに挿入します。 ID =(@設定Idを使用して他のテーブルから選択する方法を1つずつ選択する方法

宣言@IdのVARCHAR(100)、SorderのVARCHAR(100)@、Sorder1のVARCHAR(100)@、Sorder2のVARCHAR(100)@、attrIdのVARCHAR @(100) [BB_INTERFACEからIDを選択します[MWIバックホールWSIPTトランクグループ]、 'MWIバックホールWSIPT新しい番号範囲'、 'MWIバックホールWSIPTプレゼンテーション番号範囲'、 'MWIインターコネクトルータの設定'、 'の[dbo]。[tbl_task_configuration_desc] MWI緊急連絡先 ' 'MWI GVAのPOP割り当てMWI'、 'MWI GVA POPの設定'、 'MWIバックホールWSIPTトランク'、 'MWIハンドオーバサービス'、 'MWI CPOD VLAN割り当て'、 ' CPOD VLAN情報 ' 'MWIハンドオーバサービスカスタマー・グループ'、 'MWIハンドオーバサービスEMCマルチチャンネル'、 'MWIアバイアGVA情報'、 'MWIバックホールイーサネット情報'、 'MWIハンドオーバサービスインターコネクトルータ'、 ' MWIハンドオーバサービスコンタクトセンター」、 'MWIハンドオーバサービスWFO通話録音'、 'MWIハンドオーバサービスユニファイド途切れ'、 'MWIハンドオーバサービス新しい番号範囲'、 'MWI CPOD VLAN割り当てグループ') ) セット@ (@Id)のtaskcodeId)
@ Sorder1 = @ Sorder + 1を設定してください。 Sorder2 = @ Sorder1 + 1

--select @Id @ セットTASKIDは、lastScreenorderとしてSorder @、NewSorder1としてSorder1 @、NewSorder2 //問題だけで1つのIDとしてSorder2 @、Sorder1 @、Sorder2 @ことができますようここ

を選択することは、[BB_INTERFACE]。[DBO]。[tbl_task_configuration_data] (TaskCodeid、AttributeNameに、DisplayNameに、可視性、説明、ScreenOrder、コントロール、ModifyDate、アイン、編集可能、検証、マニュアル、IsHighlighted、ROWNUMに挿入します0、0、0、0、0、0、0、0、1、0、0、0、0、0、0、0、0、0、0、0、0) '1'、 '0'、 '0'、 '1'、 '0'、 '0'、 'ALL'、 '1')、 (@ id、 'productVariant'、 'productVariant'、 '1'、 'productVariant'、@ Sorder2、 'DropDown'、Getdate()、 '0'、 '0'、 '1'、 '0'、 '0 (@Id)のtaskcodeIdと(@Id)の[tbl_task_configuration_data]との間には、 (dst)_ [tbl_task_configuration_data_dropdown] (TaskCodeId、AttributeId、AttributeValue、[Enable]、AttributeText) 値(@ id、@ attrId、 '属性名=' productVariant 'およびコントロール=' DropDown ' ACSプレミアム '、' 1 '、' ACSプレミアム ')、 (@ id、@ attrId、' ACS選択 '、' 1 '、' ACS選択 ')、 (@ id、@ attrId、' ACS DI ' '1'、 'ACS DI')

//要件:これらのIDを取得してIDNを取得してIDNを取得する方法o 2つのテーブル...その問題で親切に助けてください

答えて

0
Set @TASKID=(select id from [BB_INTERFACE].[dbo]. //get ids [tbl_task_configuration_desc] 
    where title in 

あなたのIDは複数の値を返す可能性があり、上記のコードは失敗します。

ので、私はいくつかの一時テーブルに

create table #temp 
(
id int 
) 
insert into #temp 
<<your select query>> 

これを置くことをお勧めしますし、最終的には、後のためのtaskIdの代わりに、上記の一時テーブルを使用するには、あなたがこのアプローチに従うことができ

0

を照会します。

IF object_id('#TASKID') is not null 
    drop table #TASKID 

SELECT id INTO #TASKID 
     FROM [BB_INTERFACE].[dbo].[tbl_task_configuration_desc] 
     WHERE title IN ('MWI Backhaul WSIPT TrunkGroup', 
         'MWI Backhaul WSIPT New Number Range', 
         ... long list of string constants ..... 
         'MWI Handover Service New Number Range', 
         'MWI CPOD VLAN Allocation Group') 
     AND LOB = 'AVAYA bto L2C' 

SELECT * 
FROM [BB_INTERFACE].[dbo].[tbl_task_configuration_data] 
--where AttributeName like'%Product Variant%' 
WHERE taskcodeId IN (select id from #TASKID) 

SELECT TOP 10 * 
FROM [BB_INTERFACE].[dbo].[tbl_task_configuration_data_dropdown] 
WHERE taskcodeId IN (select id from #TASKID) 

説明:このに続いている選択クエリを使用して、一時テーブルにIDを挿入します210、次にこのようなテンポラリテーブルをこのようなクエリで使用するWHERE taskcodeId IN (select id from #TASKID)

関連する問題