Ho una tabella con due colonne di stringhe: Url e ModelId. Ho bisogno di restituire i record per i quali URL contiene ModelId, qualcosa di simile:MySQL come un altro campo
SELECT Id, Url, ModelId WHERE Url like "%ModelId%"
Ho una tabella con due colonne di stringhe: Url e ModelId. Ho bisogno di restituire i record per i quali URL contiene ModelId, qualcosa di simile:MySQL come un altro campo
SELECT Id, Url, ModelId WHERE Url like "%ModelId%"
SELECT Id, Url, ModelId
WHERE Url LIKE CONCAT('%', ModelId, '%')
thx, cercavamo questo ovunque –
Tecnicamente potresti voler scappare dal campo nel caso in cui abbia% in esso: LIKE CONCAT ('%', REPLACE (campo, '%', '\%'), '%') – dlo
Ecco la domanda:
SELECT Id, Url, ModelId WHERE Url LIKE CONCAT('%', ModelId, '%')
Non si può semplicemente concat le stringhe, è necessario anche sfuggire il campo da% e _:
SELECT Id, Url, ModelId
WHERE Url LIKE CONCAT('%', REPLACE(REPLACE(ModelId,'%','\%'),'_','\_'), '%'), '%')
possibile duplicato di [Usa LIKE% ..% con valori di campo in MySQL] (http://stackoverflow.com/questions/4420554/use-like-with-field-values-in-mysql) –