>  Q&A  >  본문

MySQL 8의 SELECT 문에서 변수를 전달합니다.

변수를 사용하여 간단한 select 문을 시도하고 있습니다. concat_ws('%', @S, '%'); 와 같은 명령문을 변경하면 정상적으로 작동합니다. 문자열에. select 문이 SET 변수를 선택하지 않은 것 같습니다. 도움을 주셔서 감사합니다. Mysql80 워크벤치를 사용하고 있습니다.

SET @S = "product";
SELECT distinct idproducts FROM mgjtest.vorutaflamedsamheit
WHERE productname like concat_ws('%', @S, '%');
````````````````````````````````````````````````````````````````

P粉764836448P粉764836448244일 전492

모든 응답(1)나는 대답할 것이다

  • P粉128563140

    P粉1285631402024-02-18 00:11:42

    단순히 CONCAT 即可确保变量值两侧的通配符。否则,先使用 CONCAT_WS을 구분 기호 인수로 사용하면 문자열 끝에 이중 와일드카드가 반환됩니다. 이는 단일 와일드카드 와 동일하며 원치 않는 결과가 생성됩니다.

    으아악

    그러나 CONCAT는 예상한 대로 와일드카드를 반환합니다.

    으아악

    회신하다
    0
  • 취소회신하다