我正在嘗試一個帶有變數的簡單選擇語句。如果我更改類似 concat_ws('%', @S, '%'); 的語句,則該語句可以正常運作。到一個字串。看來 select 語句沒有選取 SET 變數。非常感謝您的幫忙。我使用的是Mysql80工作台。
SET @S = "product"; SELECT distinct idproducts FROM mgjtest.vorutaflamedsamheit WHERE productname like concat_ws('%', @S, '%'); ````````````````````````````````````````````````````````````````
只需使用
CONCAT
即可確保變數值兩側的通配符。否則,先使用CONCAT_WS
作為分隔符號的參數在字串末尾返回雙通配符,相當於單通配符並產生不期望的結果。但是,
CONCAT
將依照您的預期傳回通配符: