Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server и имплицитно преобразуване на типове

Това е списъкът, който търсите DataType Precedence

Във вашите примери:

WHERE quantity > '3'

'3' се преобразува в int, съответстващо на количество

WHERE quantityTest > 3

Не е необходимо кастинг

WHERE date = 20120101

20120101 като число се прехвърля към дата, която е твърде голяма. напр.

select cast(20120101 as datetime)

Това е различно от

WHERE date = '20120101'

Където е датата като низ може да се предава.

Ако слезете надолу с една трета от препратката за CAST и CONVERT към раздела Неявни преобразувания има таблица на разрешените неявни преобразувания. Това, че е разрешено, не означава, че ще работи, като (20120101 -> дата и час).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Най-ефективният начин в SQL Server за получаване на дата от дата+час?

  2. Как да свържете текст от множество редове в един текстов низ в SQL Server

  3. Брой(*) срещу Брой(1) - SQL Server

  4. Актуализирайте една таблица въз основа на данни от множество таблици SQL Server 2005,2008

  5. Какво означават тези опции за архивиране само за копиране?