Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

phân tích kết quả trong MySQL qua REGEX

MySQL không có chức năng tích hợp để làm những gì bạn yêu cầu. Có thể thực hiện được bằng cách xác định một số hàm mới, nhưng có lẽ dễ dàng hơn nếu bạn thực hiện nó bằng bất kỳ ngôn ngữ lập trình nào mà bạn đang truy cập cơ sở dữ liệu.

Tuy nhiên, đối với những thứ đơn giản như địa chỉ email, bạn không cần phải sử dụng biểu thức chính quy, bạn có thể sử dụng SUBSTRING_INDEX() chức năng , như:

SELECT
    SUBSTRING_INDEX(email, '@', 1) AS Username,
    SUBSTRING_INDEX(SUBSTR(email, LOCATE('@', email)), '.', 1) AS Domain,
    SUBSTRING_INDEX(email, '.', -1) AS TLD
FROM users;

Nói cách khác, đó là:

  • Tên người dùng =mọi thứ trước '@' đầu tiên
  • Miền =mọi thứ nằm giữa '@' đầu tiên và 'đầu tiên'. '
  • TLD =mọi thứ sau dấu '.'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ngôn ngữ truy vấn Doctrine nhận Hàng tối đa / Mới nhất cho mỗi nhóm

  2. Unserialize thông qua truy vấn ở cấp độ cơ sở dữ liệu của chính nó

  3. Cách kiểm tra trạng thái kết nối MySQL trong C #

  4. Chọn các hàng ngẫu nhiên với MySQL

  5. Sử dụng một câu lệnh Python cho câu lệnh SQL INSERT