我有我的SELECT查詢與LIKE語句一起使用,但很震驚;我的行取回重複,我不知道爲什麼?在列名上使用%LIKE語句但行重複
SELECT *
FROM questions, counts
WHERE counts.test_coursecode LIKE '%' || questions.coursecode || '%'
我有我的SELECT查詢與LIKE語句一起使用,但很震驚;我的行取回重複,我不知道爲什麼?在列名上使用%LIKE語句但行重複
SELECT *
FROM questions, counts
WHERE counts.test_coursecode LIKE '%' || questions.coursecode || '%'
必須包含內部聯接兩個表的
SELECT *
FROM questions q inner join counts c on a q.id and c.fk
WHERE counts.test_coursecode LIKE CONCAT('%', questions.coursecode, '%')
或
SELECT *
FROM questions q , counts c
where a q.id and c.fk
and counts.test_coursecode LIKE CONCAT('%', questions.coursecode, '%')
q.id和c .fk幫助結束重複的行感謝一百萬 – PULabs 2014-09-13 12:38:45
我假設你想使用
SELECT *
FROM questions, counts
WHERE counts.test_coursecode LIKE CONCAT('%', questions.coursecode, '%')
代替。
||
不是連接運算符,而是mysql的sql方言中的logical OR。
您的查詢將每一行匹配,因爲任何值將匹配第一個表達式,它的計算結果
SELECT *
FROM questions, counts
WHERE counts.test_coursecode LIKE '%' -- that's true, if test_course_code is not null
OR questions.coursecode
OR '%'
你能分享一些數據嗎?看起來像多個'coursecode'可能匹配'test_coursecode'(反之亦然)。 – Mureinik 2014-09-13 12:07:32