Đôi khi bạn có thể cần phải tìm kiếm một bảng cơ sở dữ liệu chỉ cho những hàng có chứa ít nhất một số trong một cột nhất định.
Nói một cách chính xác, các con số có thể được biểu thị bằng các từ và các ký hiệu khác, nhưng với mục đích của bài viết này, “number” có nghĩa là “chữ số”.
Dưới đây là ví dụ về cách sử dụng T-SQL để tìm các hàng chứa ít nhất một số trong SQL Server.
Ví dụ
Giả sử chúng ta có một bảng được gọi là Products
với dữ liệu sau trong ProductName
của nó cột:
SELECT ProductName
FROM Products;
Kết quả:
+-------------------------------------+ | ProductName | |-------------------------------------| | Left handed screwdriver | | Long Weight (blue) | | Long Weight (green) | | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Straw Dog Box | | Bottomless Coffee Mugs (4 Pack) | | Right handed screwdriver | +-------------------------------------+
Cột này rõ ràng chứa dữ liệu ký tự, nhưng một số hàng chứa số trong dữ liệu ký tự đó (ngay cả khi chúng không được lưu trữ dưới dạng số).
Chúng ta có thể sử dụng truy vấn sau để chỉ trả về những hàng có chứa các số được biểu thị bằng các chữ số:
SELECT ProductName
FROM Products
WHERE ProductName LIKE '%[0-9]%';
Kết quả:
+-------------------------------------+ | ProductName | |-------------------------------------| | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Như mong đợi, chỉ những hàng có chứa số mới được trả về.
Kỹ thuật này không chỉ giới hạn ở những con số. Bạn có thể sửa đổi truy vấn này để bao gồm các ký tự khác nếu được yêu cầu. Tất cả những gì chúng tôi đang làm là chỉ định mẫu của riêng chúng tôi cho LIKE
nhà điều hành.