2017-11-09 22 views
-2

MySQLで表を宣言する方法を尋ねます。私はこのコードを使用してみましたが、私は下のエラーを取得しています:SQLで変数を宣言し、「テーブル変数@TBLを宣言しなければならない」エラー

DECLARE @TBL VARCHAR(20) 
SET @TBL = 'A171107001'; 

select APPLICATION, count(JOB_NAME) as 'JOB COUNT' from @TBL 

エラーメッセージ:

のJava :: JavaSql ::のSQLException:テーブル変数を宣言しなければなりません "@TBL": DECLARE @TBL VARCHAR(20)

+0

彼女はテーブル変数 – Valerica

+1

を宣言したい**どの** SQL? MySQL、Oracle、SQL Server、または何か他のもの?あなたの投稿を編集してタグ付けしてください。 @Valericaいいえ、明確に言い表せませんが、コードは、変数から取られた動的な名前を持つテーブルから選択する方法が問題であることを示しています。 DBMSにタグが設定されると、これを重複としてマークするのは簡単です。 –

+0

テーブル名をそのようなパラメータとして渡すことはできません。 – jarlh

答えて

-1

あなたの質問は不明です。しかし、これはT-SQLで表変数を宣言する方法です。

DECLARE @TBL AS TABLE (
JOB_NAME VARCHAR(20) 
) 
INSERT INTO @TBL VALUES ('A171107001') 

select JOB_NAME from @TBL 

編集後、私はあなたがMySQLを使用しているのを見ることができました。

とにかく、テーブル変数を宣言する方法を尋ねていて、特定のテーブルから選択する方法を期待しているようです。その名前は変数から来ています。 B001 @

0
のSQLServerで

少なくとも

declare @l_table varchar(100) = 'a' 
declare @l_sql varchar(100) = 'select count(*) from '[email protected]_table 
exec (@l_sql) 
関連する問題