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

--queryの下の$CONDITIONSの目的は何ですか?

    $CONDITIONS タスクの分割とメタデータのフェッチを実現するためにクエリを変更するためにsqoopによって内部的に使用されます。

    メタデータをフェッチするために、sqoopは\$CONDITIONSを置き換えます 1 =0

    select * from table where 1 = 0
    

    すべてのデータ(1つのマッパー)をフェッチするために、sqoopは\$CONDITIONSを置き換えます 1 =1

    select * from table where 1 = 1
    

    複数のマッパーの場合、sqoopが\$CONDITIONSを置き換えます RDBMSからデータのサブセットをフェッチする範囲クエリを使用します。

    たとえば、id 1から100の間にあり、4つのマッパーを使用しています。

    Select * From table WHERE id >= 1' AND 'id < 25
    Select * From table WHERE id >= 25' AND 'id < 50
    Select * From table WHERE id >= 50' AND 'id < 75
    Select * From table WHERE id >= 75' AND 'id <= 100
    



    1. SQLServer2012のプロセッサの選択

    2. タイムスタンプを更新せずにエントリを更新する

    3. MySQL JOIN / GROUP_CONCAT 2番目のテーブル?

    4. 読み取りコミットされた分離レベル