Làm cách nào để lấy ký tự đầu tiên của chuỗi trong mysql?

Trong bảng

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
3 có cột email. Bạn muốn hiển thị bảy ký tự đầu tiên của mỗi email

Cái bàn trông như thế này

emailjake99@gmail. comtamarablack@zoho. comnotine@yahoo. frjessica1995@onet. làm ơn

Giải pháp 1

SELECT
  email,
  SUBSTRING[email, 1, 7] AS substring
FROM emails;

cú pháp khác

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;

Kết quả là

emailsubstringjake99@gmail. comjake99@tamarablack@zoho. comtamarabnotine@yahoo. frnotine@jessica1995@onet. pljessica

Thảo luận

Sử dụng hàm

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
4. Đối số đầu tiên là chuỗi hoặc tên cột. Đối số thứ hai là chỉ mục của ký tự mà tại đó chuỗi con sẽ bắt đầu. Đối số thứ ba là độ dài của chuỗi con

Coi chừng. Không giống như trong một số ngôn ngữ lập trình khác, các chỉ mục bắt đầu từ 1, không phải 0. Điều này có nghĩa là ký tự đầu tiên có chỉ số 1, ký tự thứ hai có chỉ số 2, v.v.

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
5 sẽ trả về chuỗi con của các giá trị trong cột email bắt đầu ở đầu chuỗi [ký tự đầu tiên] và kéo dài bảy ký tự. Ký hiệu khác,
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
6, thực hiện chính xác như vậy. Đối số sau
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
0 là chỉ mục bắt đầu và đối số sau
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
1 là độ dài chuỗi con

Đối số thứ ba của hàm

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
4 là tùy chọn. Nếu bạn bỏ qua nó, bạn sẽ nhận được chuỗi con bắt đầu tại chỉ mục trong đối số thứ hai và đi đến cuối chuỗi.
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
3 sẽ trả về toàn bộ chuỗi, giống như
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
4

ví dụ 2

Bạn muốn hiển thị chuỗi con giữa chỉ mục 2 và 6 [bao gồm]

Giải pháp 2

SELECT
  email,
  SUBSTRING[email, 2, 5] AS substring
FROM emails;

cú pháp khác

SELECT
  email,
  SUBSTRING[email FROM POSITION['@' IN email]] AS substring
FROM emails;

Kết quả là

emailsubstringjake99@gmail. com@gmail. comtamarablack@zoho. com@zoho. comnotine@yahoo. fr@yahoo. frjessica1995@onet. làm ơn @onet. làm ơn

Thảo luận

Bạn sử dụng hàm

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
4 như trong các ví dụ trước. Lần này, bạn đang tìm kiếm một ký tự cụ thể có vị trí có thể thay đổi từ hàng này sang hàng khác. Để tìm chỉ mục của ký tự cụ thể, bạn có thể sử dụng hàm
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
6, trong đó ký tự là ký tự cụ thể mà bạn muốn bắt đầu chuỗi con [ở đây,
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
7]. Cột đối số là
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
8 mà từ đó bạn muốn truy xuất chuỗi con;

Nếu bạn muốn chuỗi con đi đến hết chuỗi ban đầu thì không cần đối số thứ ba trong hàm

SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
4 [hoặc đối số
SELECT
  email,
  SUBSTRING[email FROM 1 FOR 7] AS substring
FROM emails;
1]. Mặt khác, nó phải là độ dài của chuỗi con hoặc bạn có thể tính toán nó bằng hàm
SELECT
  email,
  SUBSTRING[email, 2, 5] AS substring
FROM emails;
1. Bạn cũng có thể muốn truy xuất một chuỗi con không kết thúc ở cuối chuỗi mà ở một số ký tự cụ thể, e. g. , trước '. '. Đây là một ví dụ

Thí dụ

Trích xuất một chuỗi con từ một chuỗi [bắt đầu từ vị trí 5, trích xuất 3 ký tự]

SELECT SUBSTRING["Hướng dẫn SQL", 5, 3] AS ExtractString;

Tự mình thử »

Định nghĩa và cách sử dụng

Hàm SUBSTRING[] trích xuất một chuỗi con từ một chuỗi [bắt đầu từ bất kỳ vị trí nào]

Ghi chú. Các hàm SUBSTR[] và MID[] bằng với hàm SUBSTRING[]

cú pháp

SUBSTRING[chuỗi, bắt đầu, độ dài]

HOẶC

SUBSTRING[chuỗi TỪ bắt đầu CHO độ dài]

Giá trị tham số

Tham sốChuỗi mô tảBắt buộc. Chuỗi để trích xuất fromstartRequired. vị trí bắt đầu. Có thể là cả số dương hoặc số âm. Nếu là số dương thì hàm này lấy từ đầu chuỗi. Nếu là số âm thì hàm này trích xuất từ ​​cuối stringlengthOptional. Số lượng ký tự để trích xuất. Nếu bỏ qua, toàn bộ chuỗi sẽ được trả về [từ vị trí bắt đầu]

chi tiết kỹ thuật

Thêm ví dụ

Thí dụ

Trích xuất một chuỗi con từ văn bản trong một cột [bắt đầu từ vị trí 2, trích xuất 5 ký tự]

SELECT SUBSTRING[CustomerName, 2, 5] AS ExtractString
TỪ Khách hàng;

Tự mình thử »

Thí dụ

Trích xuất một chuỗi con từ một chuỗi [bắt đầu từ cuối, ở vị trí -5, trích xuất 5 ký tự]

CHỌN SUBSTRING["Hướng dẫn SQL", -5, 5] AS ExtractString;

Tự mình thử »

Chủ Đề