Heim > Fragen und Antworten > Hauptteil
Ich versuche es mit einer einfachen Select-Anweisung mit Variablen. Wenn ich die Anweisung wie concat_ws('%', @S, '%'); ändere, funktioniert es einwandfrei. zu einer Zeichenfolge. Es scheint, dass die SELECT-Anweisung die SET-Variable nicht auswählt. Ich danke Ihnen für Ihre Hilfe. Ich verwende die Mysql80-Workbench.
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
作为分隔符的参数在字符串末尾返回双通配符,相当于单通配符并产生不期望的结果。
LIKE 'product%%' LIKE 'product%'
但是,CONCAT
将按照您的预期返回通配符:
LIKE '%product%'