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

Làm cách nào để chỉ định Like trên một cột số nguyên?

Rất tiếc, bạn đã không chỉ định cơ sở dữ liệu nào bạn đang sử dụng (SQL chỉ là ngôn ngữ truy vấn ....), nhưng nếu bạn đang sử dụng SQL Server (sản phẩm Microsoft RDBMS), thì bạn có thể tạo một cột được tính toán kiểu VARCHAR (15) để giữ một biểu diễn chuỗi của INT của bạn và sau đó chỉ cần tìm kiếm trên đó ....

ALTER TABLE dbo.YourTable
   ADD IdAsString AS CAST(Id AS VARCHAR(15)) PERSISTED    -- PERSISTED might not work - depending on your version of SQL Server

SELECT (list of columns)
FROM dbo.YourTable
WHERE IdAsString LIKE '123%'

Liệu điều đó có thực sự có ý nghĩa kinh doanh hay không, lại là một câu chuyện hoàn toàn khác ..... (Tôi đồng ý với Oded và Matt Ball ...)

Nhưng vì đó là cột chuỗi bây giờ, bạn có thể sử dụng Restrictions.Like của mình cách tiếp cận trong NHibernate như bạn đề cập.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CTE trả về lỗi

  2. SQL Server chứa chức năng văn bản đầy đủ không trả lại kết quả mong đợi

  3. pyodbc:Làm thế nào để thử lại để khôi phục từ lỗi Tạm thời?

  4. Tôi có nên đặt kích thước nhóm tối đa trong chuỗi kết nối cơ sở dữ liệu không? Điều gì xảy ra nếu tôi không làm vậy?

  5. Cột khóa chính của Hướng dẫn tuần tự có nên là một chỉ mục theo nhóm không?