1. ホーム
  2. sql

[解決済み] sqlite3でのキャストの入力方法

2022-02-26 03:43:47

質問

コマンドプロンプトで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;  

最後の行を除いてはすべて動作しますが、エラーが発生します。

エラー: 認識できないトークン: ":"`.

この質問から読んでいたのですが( SQLにおけるダブルコロン(::)表記について )ダブルコロン表記はSQLのタイプキャストであるとのことです。私の操作方法が間違っているのでしょうか?

どのように解決するのですか?

その :: 構文はPostgreSQLに特有のものです。代わりにANSI標準を使用することができます。

SELECT CAST(b AS INT) + 2 AS alias
FROM A

SqlFiddleDemo