MySQL Select Query - Chỉ nhận 10 ký tự đầu tiên của một giá trị


126

Ok, đây là vấn đề.

Tôi có một bảng với một số cột và 'chủ đề' là một trong các cột. Tôi cần lấy 10 chữ cái đầu tiên từ trường 'chủ đề' bất kể trường 'chủ đề' chứa một chuỗi có 100 chữ cái.

Ví dụ,

Bảng - tbl. Cột - id, subject, value.

Truy vấn SQL:

SELECT subject FROM tbl WHERE id ='$id';

Kết quả tôi nhận được chẳng hạn là

Xin chào, đây là chủ đề của tôi và bạn có khỏe không

Tôi chỉ yêu cầu 10 ký tự đầu tiên

Xin chào, thi

Tôi có thể hiểu rằng tôi có thể xóa phần còn lại của các ký tự bằng cách sử dụng php substr () nhưng điều đó là không thể trong trường hợp của tôi. Tôi cần gỡ bỏ các ký tự thừa bằng MySQL. Điều này có thể giải quyết như thế nào?

Câu trả lời:



43
SELECT SUBSTRING(subject, 1, 10) FROM tbl

Tôi cảm thấy như đây là câu trả lời đầy đủ hơn, vì LEFTcó thể không đề cập đến các chi tiết cụ thể (có, như những điều được OP nêu ra) đối phó với các phép chiết xuất cần bắt đầu giữa chuỗi.
d8aninja

15

Hãy xem Bên trái hoặc Chuỗi con nếu bạn cần cắt nhỏ hơn nữa.

Google và tài liệu MySQL là một nơi tốt để bắt đầu - bạn thường sẽ không nhận được phản hồi nồng nhiệt như vậy nếu bạn thậm chí không cố gắng tự giúp mình trước khi đặt câu hỏi.


4
Một mẫu sẽ hữu ích hơn một chút.
Rocco The Taco

6
@RoccoTheTaco Tôi hoàn toàn không đồng ý - lá phiếu phản đối của bạn cũng rất khắc nghiệt. đọc http://stackoverflow.com/questions/how-to-askđiểm đầu tiên là Have you thoroughly searched for an answer before asking your question?. Câu hỏi này rất dễ trả lời bằng cách tìm kiếm trên Google đơn giản và nhanh chóng. Tôi không chỉ muốn cung cấp cho các OP câu trả lời tôi muốn chỉ cho họ cách tìm câu trả lời - nhiều hơn hữu ích trong quan điểm của tôi.
Steve

13
Tôi hiểu @Steve đang nói gì (có lý) nhưng tôi đến đây từ Google. Vâng, câu hỏi ban đầu là lười biếng nhưng thực tế là tôi không phải đi nơi khác đã giúp tôi. Thật tuyệt khi SO đang xây dựng một thư viện câu trả lời cho những câu hỏi đơn giản như thế này. Cũng tương đương với nhiều $ quảng cáo hơn cho SO.
sterfry68
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.