나는 온통 많은 조인을 가진 상당히 복잡한 쿼리를 가지고 있습니다. 쿼리 자체는 완벽하게 작동하며 ID 별 적절한 그룹화를 통해 고유 값만 표시하고 필드를 고려하여 GROUP BY
을 사용하고 있으며 일련 번호가 포함 된 3 개의 필드가 있습니다.그룹 내에서 검색과 일치하는 행을 검색하고 반환합니다.
문제는 동일한 ID를 공유하는 3 개의 행이 있다고 가정 해 보겠습니다. 수단 그룹핑으로하면
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