sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan angives et like på en heltalskolonne?

Desværre har du ikke angivet hvilken database du bruger (SQL er kun forespørgselssproget...), men hvis du er på SQL Server (Microsoft RDBMS-produktet), kan du oprette en beregnet kolonne af typen VARCHAR(15) for at holde en strengrepræsentation af din INT , og søg så bare på det....

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

Om det virkelig giver forretningsmæssig mening, er en helt anden historie..... (jeg er enig med Oded og Matt Ball...)

Men da det nu er en strengkolonne, burde du være i stand til at bruge dine Restrictions.Like tilgang i NHibernate, som du nævner.



  1. Fejlkode 1292 Mysql DateTime

  2. Scanner en mysql-tabel fra bunden

  3. Gruppering af rækker i betragtning af forskellen mellem rækkerne

  4. For at ændre kolonnedatatype fra clob til xmltype