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

MySQL InnoDB Wyszukiwanie pełnotekstowe zawierające adres e-mail

Miałem zapytania, które używały dopasowania do wiadomości e-mail, które zaczęły kończyć się niepowodzeniem, gdy przełączyłem się na innodb, ponieważ @ służy do wyszukiwania słów w pewnej odległości od siebie w InnoDB:

SELECT username FROM users WHERE MATCH(user_email) AGAINST('[email protected]' IN BOOLEAN MODE);
ERROR 1064 (42000): syntax error, unexpected '@', expecting $end

SELECT username FROM users WHERE MATCH(user_email) AGAINST("[email protected]" IN BOOLEAN MODE);
ERROR 1064 (42000): syntax error, unexpected '@', expecting $end
mysql>

Spróbuj zapakować swój adres e-mail w ten sposób:

SELECT username FROM users WHERE MATCH(user_email) AGAINST('"[email protected]"' IN BOOLEAN MODE);

lub uciekł:

SELECT username FROM users WHERE MATCH(user_email) AGAINST('\"[email protected]\"' IN BOOLEAN MODE);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak obliczyć powierzchnię wielokąta w bazie danych MySQL, gdy punkty wielokąta są długościami długości?

  2. Hybrydowa replikacja w chmurze dla MySQL w celu zapewnienia wysokiej dostępności

  3. Filtr porównywania dat MySQL

  4. Czy powinienem przechowywać pole PRICE jako int czy jako float w bazie danych?

  5. Czy MySQL pozwala na tworzenie bazy danych z kropką?