Cách sắp xếp tên miền trong MySQL
Để sắp xếp tên miền, hãy sử dụng ORDER BY SUBSTRING_INDEX(). Hãy tạo một bảng trước:
mysql> create table DemoTable670(DomainName text); Query OK, 0 rows affected (0.77 sec)
Chèn một số bản ghi vào bảng bằng lệnh insert. Ở đây, chúng ta chèn các tên miền:
mysql> insert into DemoTable670 values('www.facebook.com');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable670 values('www.google.com');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable670 values('www.amazon.com');
Query OK, 1 row affected (0.19 sec)
Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select:
mysql> select * from DemoTable670;
Điều này sẽ tạo ra đầu ra sau:
+------------------+ | DomainName | +------------------+ | www.facebook.com | | www.google.com | | www.amazon.com | +------------------+ 3 rows in set (0.00 sec)
Truy vấn sau sắp xếp tên miền trong MySQL:
mysql> select * from DemoTable670 order by SUBSTRING_INDEX(DomainName, '.', -2), SUBSTRING_INDEX(DomainName, '.', 2);
Điều này sẽ tạo ra đầu ra sau:
+------------------+ | DomainName | +------------------+ | www.amazon.com | | www.facebook.com | | www.google.com | +------------------+ 3 rows in set (0.00 sec)
Giải thích:
SUBSTRING_INDEX(DomainName, '.', -2): Lấy 2 phần cuối (ví dụ:facebook.com,google.com,amazon.com) để sắp xếp theo tên miền cấp 2.SUBSTRING_INDEX(DomainName, '.', 2): Lấy 2 phần đầu (ví dụ:www.facebook,www.google,www.amazon) để sắp xếp phụ theo subdomain.