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

MYSQL:chọn một phần của văn bản và cắt nó dựa trên vị trí của dấu chấm

Có thể một cái gì đó như thế này có thể hoạt động:

SELECT
    id,
    CASE
        WHEN len <= 500 THEN content
        ELSE CASE
            WHEN idx > 0 THEN SUBSTRING(content, 1, idx)
            ELSE ''
        END
    END AS content
FROM (
  SELECT 
    id,
    content,
    LOCATE('.', content, 500) AS idx,
    LENGTH(content) AS len
  FROM data
) AS data

Bạn có thể thấy nó hoạt động tại đây: http://sqlfiddle.com/#!2/ac4d3 / 2 (Tôi sử dụng chuỗi có độ dài 10 vì lý do rõ ràng;))




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL - Chỉ nhận kết quả của năm hiện tại

  2. Các trận chiến mã hóa ký tự UTF-8 json_encode ()

  3. ServiceStack:Đang kiểm tra OrmLite, được cài đặt bằng NuGet nhưng tôi gặp lỗi FileNotFoundException

  4. MySQL là gì:Tổng quan

  5. Mysqldump nhiều hơn một bảng?