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

SQL Server og implicit konvertering af typer

Dette er den liste, du leder efter DataType Precedence

I dine eksempler:

WHERE quantity > '3'

'3' er castet til int, matchende mængde

WHERE quantityTest > 3

Ingen casting påkrævet

WHERE date = 20120101

20120101 som et nummer bliver castet til en dato, som er for stor. f.eks.

select cast(20120101 as datetime)

Dette er forskelligt fra

WHERE date = '20120101'

Hvor datoen som en streng kan støbes.

Hvis du går en tredjedel ned af CAST og CONVERT referencen til afsnittet Implicitte konverteringer er der en tabel over implicitte konverteringer, der er tilladt. Bare fordi det er tilladt, betyder det ikke, at det vil virke, f.eks. (20120101 -> datetime).



  1. Udtræk Måned fra Dato-feltet

  2. MySQL Levenshtein

  3. Umuligt at installere PG gem på min mac med Mavericks

  4. Opret et multidimensionelt array fra en databasetabel