如何在sqlite3中键入强制转换

Abu*_*nce 9 sql sqlite casting

我在命令提示符下运行了sqlite3并运行了一些基本的SQL命令.

user@comp:~$ sqlite3  
SQLite version 3.8.2 2013-12-06 14:53:30  
Enter ".help" for instructions  
Enter SQL statements terminated with a ";"  
sqlite> CREATE TABLE A (a int, b text, c float);  
sqlite> INSERT INTO A(a,b,c) VALUES (1, '2', 3);  
sqlite> SELECT b::int+2 FROM A;  
Run Code Online (Sandbox Code Playgroud)

除了最后一行之外,所有行都有效,它给出了错误:`

错误:无法识别的令牌:":"`

我正在阅读这个问题(SQL中的双冒号(:)标记,双冒号表示法是SQL的类型转换.我做错了吗?

Luk*_*zda 20

::语法是PostgreSQL的具体.您可以使用ANSI标准:

SELECT CAST(b AS INT) + 2 AS alias
FROM A
Run Code Online (Sandbox Code Playgroud)

SqlFiddleDemo