0

2つのmysqlテーブル内の部分一致を調べて結合するクエリがあります。

SELECT table1.column, table2.column FROM table1, table2 WHERE table1.val LIKE table2.val

これは結合としては正常に機能しますが、table2の値の一部は、実際にはテーブル1の値のサブ文字列です。具体的には、URLです。したがって、table1.valはhttp://google.comに等しく、table2.val=google.comになります。

この比較を行うために、table2valの周りで'%'演算子を使用するにはどうすればよいですか。

前もって感謝します!

4

2 に答える 2

4

このような:

... WHERE table1.val LIKE CONCAT('%', table2.val, '%')

table1.val = table2.valのすべての行を検索する必要があるため、これは のようには機能しないことに注意してくださいtable2

于 2012-05-01T22:45:51.413 に答える
0

Q: table2 val の前後に「%」演算子を使用してこの比較を行うにはどうすればよいですか。

A:あなたはしません:)

列は、名前 (例: "mycolumn")、完全修飾名 (例: "mytable.myname")、または序数 (例: "1") で指定できます。

于 2012-05-01T22:45:06.223 に答える