Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak określić Like w kolumnie liczb całkowitych?

Niestety, nie określiłeś jakiej bazy danych używasz (SQL jest tylko językiem zapytań...), ale jeśli korzystasz z SQL Server (produkt Microsoft RDBMS), możesz utworzyć kolumnę obliczeniową typu VARCHAR(15) do przechowywania ciągu reprezentującego twój INT , a następnie po prostu wyszukaj to....

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%'

Czy to naprawdę ma sens biznesowy, to zupełnie inna historia… (Zgadzam się z Odedem i Mattem Ballem…)

Ale ponieważ jest to teraz kolumna ciągu, powinieneś być w stanie użyć swojego Restrictions.Like podejście w NHibernate, jak wspomniałeś.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Samouczek SQL Server — wszystko, czego potrzebujesz do opanowania języka Transact-SQL

  2. Jak zaimportować plik JSON do tabeli serwera SQL?

  3. Uzyskaj ostateczne nazwy kolumn ze zmiennej tabeli

  4. Jak za miesiąc odzyskać wszystkich pracowników, których wiek ukończy 21 lat?

  5. MS SQL - inny plan wykonania dla różnych schematów?