0
이와 같은 쿼리는 기본적으로 각각의 조건에 대한 사용자 이름을 해독하거나 단 한번만 각 조건에 적용 할 수 있습니까?복호화를 사용하는 다중 Where 절
SELECT *
FROM TableA
WHERE (
CONCAT_WS(
' ',
AES_DECRYPT(TableA.FirstName, "fnkey"),
AES_DECRYPT(TableA.LastName, "lnkey")
) LIKE '%RAY%'
OR
CONCAT_WS(
' ',
AES_DECRYPT(TableA.LastName, "lnkey"),
AES_DECRYPT(TableA.FirstName, "fnkey")
) LIKE '%RAY%'
);
해독 된 이름을 '선택'하는 것이 더 빠를 수도 있습니다. 그런 다음 사용중인 프로그래밍 언어로 결과를 필터링 할 수 있습니까? –
왜 LIKE %% 구문은 항상 인덱스를 망칠 수 있기 때문에 이것을 사용 하시겠습니까? 그래서 완전한 테이블 스캔은 항상 필요합니다. 테이블이 클 경우 이것은 정말로 느려질 것입니다. –
해독하는 것만으로는 완전한 테이블 스캔이 필요하지 않습니까? – Ray