Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zapytanie MySQL :Dopasuj wartość oddzieloną przecinkami z kolumną zawierającą ciąg oddzielony przecinkami

Można to zrobić za pomocą wyrażenia regularnego, jak powiedział @1000111, ale z bardziej skomplikowanym wyrażeniem regularnym. Spójrz na to, na przykład:

(^|,)(13|15)(,|$)

To nie pasuje do 13 z 135 lub 1 z 13 i tak dalej. Na przykład dla numeru 13 będzie to pasować do następnych ciągów:

1,13,2
13,1,2
1,13
13,2
13

Ale nie pasuje do tych

1,135,2
131,2
1,113

A to jest zapytanie:

SET @search = '13,15';

SELECT *
FROM test
WHERE interests REGEXP CONCAT('(^|,)(', REPLACE(@search, ',', '|'), ')(,|$)')


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql aktualizuje wiersz o inną wartość wiersza w tej samej tabeli

  2. Usuń dane ze wszystkich tabel w MYSQL

  3. Jaki jest odpowiednik DATALENGTH() w MySQL?

  4. Wspólne wyrażenia tabelowe MySQL 8 CTE

  5. Jak sprawdzić duże litery w MySQL?