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

Cách thay đổi văn bản thành chữ thường trong SQL

Vấn đề:

Bạn muốn thay đổi một số văn bản thành chữ thường trong SQL.

Ví dụ:

Cơ sở dữ liệu của chúng tôi có một bảng có tên item với dữ liệu trong các cột sau:id , codewood_type_used . Trường hợp không nhất quán trong dữ liệu trong wood_type_used cột. Chúng tôi muốn tất cả các loại gỗ được hiển thị bằng chữ thường.

id wood_type_used
1 000237PSH Thông
2 000115MCH MAHOGANY
3 000073BTB bạch dương
4 00068WBD wAlnUt
5 00055BSH Bạch dương

Giải pháp:

Chúng tôi sẽ sử dụng LOWER() chức năng:

SELECT
    code,
LOWER(wood_type_used)
FROM item;

Truy vấn trả về các mục có loại gỗ được viết bằng chữ thường:

wood_type_used
000237PSH cây thông
000115MCH gỗ gụ
000073BTB bạch dương
00068WBD quả óc chó
00055BSH bạch dương

Thảo luận:

Bất cứ khi nào bạn muốn một số dữ liệu văn bản từ cơ sở dữ liệu SQL của mình được hiển thị bằng chữ thường, hãy sử dụng LOWER() hàm số. Hàm này nhận dạng đối số là một chuỗi hoặc tên của cột có giá trị văn bản sẽ được hiển thị ở dạng chữ thường. Nó trả về một phiên bản của dữ liệu văn bản gốc, trong đó mọi ký tự hoa đều được thay thế bằng ký tự thường tương đương và phần còn lại của các ký tự không thay đổi.

Tuy nhiên, hiển thị văn bản theo cách thống nhất không phải là ứng dụng duy nhất của LOWER() hàm số. Bạn cũng có thể thấy nó hữu ích trong các truy vấn không phân biệt chữ hoa chữ thường, tức là các truy vấn không liên quan đến cách dữ liệu văn bản bạn đang tìm kiếm được đóng gói ban đầu.

Ví dụ, trong bảng ví dụ của chúng tôi ở trên, bạn có thể muốn tìm tất cả các mặt hàng làm bằng gỗ bạch dương. Vì các giá trị của loại gỗ không được đóng dấu nhất quán, chỉ cần truy vấn tất cả các hàng có ‘birch 'Trong wood_type_used cột sẽ chỉ trả về một hàng, mặc dù hai trong số các sản phẩm được liệt kê rõ ràng được làm bằng bạch dương. Đây là nơi LOWER() đến:

SELECT *
FROM item
WHERE LOWER(wood_type_used) = ‘birch’;

Truy vấn như vậy sẽ trả về tất cả các hàng có dạng chuỗi 'birch' trong wood_type_used , bất kể giá trị được đặt trong dữ liệu gốc như thế nào. Hãy nhớ viết cả văn bản bạn đang tìm kiếm bằng chữ thườ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. “Có phải là Bí mật không? Nó có an toàn không?" Xử lý dữ liệu nhạy cảm trong mô hình hóa dữ liệu của bạn

  2. Các cột chỉ mục mới nên nằm trong khóa, hay được bao gồm?

  3. Kết nối Microsoft Excel với Xero

  4. Vấn đề Năm 2038 là gì?

  5. Hiểu đối chiếu cấp độ cơ sở dữ liệu và tác động của việc thay đổi nó cho một cơ sở dữ liệu