てきとう

ワーワーゆうとります

mySQLのLEFT JOIN時にONに条件を持たせるよー

たとえば

  • tbl_a
id tel address
1 03-1111-1111 東京都品川区
2 03-22222-222 東京都目黒区
  • tbl_b
id tel name
1 0322222222 安田
2 0311111111 高橋

みたいなよくわからないテーブルがあります。ここから名前と電話と住所を取り出したいのでJOINします。
これ電話番号でJOINしたいけどAにはハイフン入ってるなー。

SELECT a.address, a.tel, b.name FROM tbl_a AS a LEFT JOIN tbl_b AS b ON FIND_IN_SET(b.tel, REPLACE(a.tel,'-',''))

みんな大好きfind_in_setで解決したね。よかったね。