2017-09-29 4 views
-2

複数の行を更新して空の値を無視するにはどうすればよいですか?MySQL:複数の行を更新し、空の値を無視しますか?

EDIT:

INSERT INTO tbl_name 
    (id, v1, v2) 
VALUES 
    (1, 2, 3), 
    (4, , ), 
    (7, 8, 9) 
ON DUPLICATE KEY UPDATE 
v1=VALUES(v1), v2=VALUES(v2); 

どのように私は、ID = 4で(V1、V2)のようなデータを上書きしませんか? つまり、IDが重複していて、データの更新が発生すると、データが空白(または別の方法で特別にフォーマットされている)でDBに上書きされない場合は可能ですか?

+0

PSを値を解析せずに、インサートを追加することはできませんとして任意の挿入は動作しません。私は最初の45秒間に-2ptを得ましたか?質問を読むだけでなく、十分な時間のように聞こえます。 – bbe

+2

ここで私のdownvoteではありませんが、あなたが試した実際のクエリを投稿していない可能性がありますエラーが含まれている場合、それはおそらくあなたです。私はdownvotersのために話すことはできませんが、それはそれまたはその一部になる可能性があります。あなたが使ったタグと同じように、ここにはPHPもありません。 –

+2

私たちはいつも新しいコーダーをサポートしてくれることを嬉しく思っていますが、あなたはまず自分自身を助ける必要があります。 : - )***あなたが問題を抱えている場合は** [**もっと研究をしています**](https://meta.stackoverflow.com/q/261592/1011527)**あなたが試したことを投稿してください** **動作していないことの明確な説明**を提供し、[最小、完全、および検証可能な例](http://stackoverflow.com/help/mcve)を提供します。 [質問する](http://stackoverflow.com/help/how-to-ask)の良い質問をお読みください。 [ツアーに参加する](http://stackoverflow.com/tour)と[this](https://meta.stackoverflow.com/q/347937/1011527)を必ず読んでください。 –

答えて

0

ここでは、すべての変数があるかどうかを1回確認した後にのみ、複製を挿入することを確認します。

if(isset($value_for_col1) && isset($value_for_col2) && ...){ do insert } 

それとも、「nullでない」のような構造で、あなたの列を設定することができますし、どのように、好奇心、すべての必須フィールドに

関連する問題