변수를 사용하여 간단한 select 문을 시도하고 있습니다. concat_ws('%', @S, '%'); 와 같은 명령문을 변경하면 정상적으로 작동합니다. 문자열에. select 문이 SET 변수를 선택하지 않은 것 같습니다. 도움을 주셔서 감사합니다. Mysql80 워크벤치를 사용하고 있습니다.
SET @S = "product"; SELECT distinct idproducts FROM mgjtest.vorutaflamedsamheit WHERE productname like concat_ws('%', @S, '%'); ````````````````````````````````````````````````````````````````
P粉1285631402024-02-18 00:11:42
단순히 CONCAT
即可确保变量值两侧的通配符。否则,先使用 CONCAT_WS
을 구분 기호 인수로 사용하면 문자열 끝에 이중 와일드카드가 반환됩니다. 이는 단일 와일드카드 와 동일하며 원치 않는 결과가 생성됩니다.
그러나 CONCAT
는 예상한 대로 와일드카드를 반환합니다.