Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
LOAD DATA INFILE は、特定のコンテンツで空の値のみを埋める必要があります。
CSV:
値 1、値 2 -------------- 1 123345 2 3 678901
期待される結果:
値 1、値 2 -------------- 1 123345 2 k0000123345 3 678901
LOAD DATA INFILE .... SET .... ean = IFNULL(@d3, CONCAT('k0000',an))
...空のデータベース値が残ります。
LOAD DATA INFILE を使用している場合、入力ファイルの空のフィールドは空の文字列として扱われます (文字列型の場合)。空の文字列は と同じではありませんnull。
null
したがって、入力の場合、空のフィールドはIFNULL()テストに失敗します。フィールド内の受信データの長さを確認し、ゼロの場合は連結します。
IFNULL()
LOAD DATA INFILE .... SET .... ean = IF(CHAR_LENGTH(@d3)>0,@d3, CONCAT('k0000',an))