我有一個相當複雜的查詢,並且遍佈整個地方的大量連接。查詢本身完美工作,通過適當的ID分組來顯示不同的值,並且我使用GROUP BY
來解釋COUNT()
字段,並且我有3個包含序列號的字段。搜索並返回與組中的搜索匹配的行
問題是,讓我們假設有3行共享相同的ID。每個這三列的具有三個序列號列不同的序列號,類似於下面:
Row ID SN1 SN2 SN3
1 1 abc123 (null) (null)
2 1 (null) def456 (null)
3 1 (null) (null) xyz789
在分組-由ID,第一行會出現在記錄集,這是很好的,但它也意味着如果我做了LIKE '%def%'
,該行根本不會出現。
MySQL是首先執行WHERE部分還是GROUP BY?它似乎是第一個分組,這就是爲什麼只有一個LIKE '%abc%'
工作。有什麼方法可以交換這個訂單嗎?
真正的查詢是60行,所以我不想粘貼它,但會,如果它是絕對必要的。
謝謝,這讓我走上了正確的道路。不知何故,我忽略了這個功能(正如我以前使用過的那樣)......我希望能夠進行精確匹配搜索,但寧願它正在工作:) +1 – David