Tôi có cột BIGINT mà tôi muốn thực hiện đối sánh từng phần.SQL Thích/Chứa trên cột LỚN
ví dụ: @search = 1
phải trả về tất cả các bản ghi trong đó số đầu tiên là 1 (1, 11, 100 v.v.). Về cơ bản giống như một Varchar LIKE.
Tôi đã thử:
DECLARE @search VARCHAR
SET @search = '1'
và
SET @search = '1%'
Và sử dụng:
SELECT
id FROM table
WHERE
CAST(id AS varchar) LIKE @search
Thêm một %
-@search
không giúp. Bất kỳ ý tưởng làm thế nào để thực hiện điều này?
EDIT: nó có vẻ là biến. Nếu tôi mã cứng chuỗi trong mệnh đề WHERE
tôi nhận được kết quả mà tôi đang tìm kiếm.
SELECT id FROM table WHERE CAST(id AS VARCHAR) LIKE '14%'
này mang lại cho tôi tất cả hồ sơ với một id
14 * (14, 140, 1400 vv).
bạn có thể đăng mã của mình bằng '%' được thêm vào không? – Tim3880
Đã thêm chi tiết. Xin lỗi, nên đã có nó ngay từ đầu. – hsimah
Bạn nhận được kết quả gì khi bạn chỉ chọn bảng CAST (id as Varchar) FROM? –