Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL InnoDB Pencarian teks lengkap yang berisi alamat email

Saya memiliki kueri yang menggunakan kecocokan dengan email yang mulai gagal ketika saya beralih ke innodb karena @ digunakan untuk mencari kata-kata dengan jarak tertentu di 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>

Coba bungkus alamat email Anda seperti ini:

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

atau lolos:

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. MySQL REPLACE() – Ganti Semua Contoh Substring dengan String lain

  2. Pencarian Kedekatan Geo

  3. Menemukan pengguna unik dari nilai yang ditautkan

  4. Bagaimana saya bisa menekan output tajuk kolom untuk satu pernyataan SQL?

  5. SQLite di Android:Kunci Asing dan <table constraint> diharapkan