ど素人から毛を生やす。<延>

[MySQL]warning1292が出たので困ってたらすっごいケアレスミスだった話。

Web > Other 2017年12月21日(最終更新:6年前)

2017年12月21日に作成されたページです。
情報が古かったり、僕が今以上のど素人だった頃の記事だったりする可能性があります。

どもです。

MySQLにて。

1292 Truncated incorrect DOUBLE value

などという警告が発生いたしまして。
この警告、一言で概要をいうなら、

「型が違ぇぞコラ(゜-゜)」

具体的には文字型なのに数値型で検索するとかそういうので発生する奴です。

WHEREでIS NULLしている箇所を削除したらエラーが起きなくなったので、WHEREに原因があると思っていたのですが、原因はFROMの方にありまして。

LEFT JOIN tableB ON tableA.id = tableB.name

JOINするカラムを書き間違えた結果、数値型と文字型でJOINしてるゥ!!\(゜ロ\)

これだけでは警告が発生せず、WHEREの方にNULLに関する判定を入れたときだけ警告になるという謎現象のおかげで気付くまでとても時間がかかりました。

なかなか遭遇する事案ではないと思いますが、参考までに。

この記事は役に立ちましたか?
  • _(:3」∠)_ 面白かった (2)
  • (`・ω・´) 役に立った (2)
  • (・∀・) 参考になった (11)