sql >> データベース >  >> RDS >> Oracle

OracleSQLのWHEREIN句で変数を渡す方法は?

    Pavanredがほのめかしたように、最も簡単な方法(必ずしも最良ではありませんが)は、値を自分で補間することです。あなたはあなたの呼び出し言語が何であるかを言いませんが、次のようなものです:

    sql = "SELECT something FROM whatever WHERE myColumn in (" + $1 + ")"
    

    ただし、これは、$ 1のすべての値を事前にチェックして、それらが数値、適切にエスケープされた文字列、または渡す必要があるが、ユーザー、SQLインジェクションを回避します。

    もう1つのオプションは、2段階のプロセスにすることです。まず、$ 1の値を一時テーブルに挿入してから、それらの値をサブクエリとして選択します。

    WHERE myColumn in (SELECT temp_value FROM temp_table)
    


    1. Postgresql関数の実行プロセス

    2. NULLを返すMySQLLOAD_FILE

    3. mysqlimport-MSWindowsXAMPP環境にCSVファイルをインポートします

    4. ルームデータベースの完全な動的クエリ