SQL как и как - PullRequest
       25

SQL как и как

2 голосов
/ 31 января 2012

Можно ли объединить несколько подстановочных знаков SQL LIKE в одном запросе - что-то вроде этого?

LIKE '% aaaa %' AND LIKE '% bbbb %'

Цель состоит в том, чтобы найти записи, содержащие оба подстановочных знака, но в произвольном порядке.

Ответы [ 6 ]

12 голосов
/ 31 января 2012

Правильный синтаксис SQL:

field LIKE '% aaaa %' AND field LIKE '% bbbb %'
2 голосов
/ 31 января 2012

Да, это будет работать, но синтаксис:

Field LIKE '%aaa%' AND field LIKE '%bbb%'
1 голос
/ 31 января 2012

Это полезно, когда вы используете этот оператор с переменными.

SELECT * 
FROM `tableName`
WHERE `colName` LIKE CONCAT('%', 'aaaa', '%') AND -- if aaaa is direct Text
      `colName` LIKE CONCAT('%', 'bbbb', '%')

SELECT * 
FROM `tableName`
WHERE `colName` LIKE CONCAT('%', aaaa, '%') AND -- if aaaa is variable
      `colName` LIKE CONCAT('%', bbbb, '%')
0 голосов
/ 29 июня 2019

Правильный синтаксис sql

    field LIKE '% aaaa %' AND field LIKE '% bbbb %'

Вы можете увидеть больше о sql, как в http://anushitech.com/how/sql-like

0 голосов
/ 31 января 2012

Возможно связать воедино произвольное количество условий. Тем не менее, целесообразно использовать круглые скобки, чтобы сгруппировать пункты для устранения любой неопределенности:

SELECT *
  FROM tableName
 WHERE (columnOne LIKE '%pattern%')
   AND (columnTwo LIKE '%other%')
0 голосов
/ 31 января 2012

Да, но помните, что LIKE - это оператор, аналогичный == или > на других языках.Вам все еще нужно указать другую сторону уравнения:

SELECT * FROM myTable
WHERE myField LIKE '%aaaa%' AND myField LIKE '%bbbb%'
...