对于比较运算符、算术运算符以及 INSERT 和 UPDATE 语句,SAP IQ 支持数据类型 BIT 与 CHAR 以及 BIT 与 VARCHAR 的隐式转换
以下示例说明了 BIT 与 CHAR 以及 BIT 与 VARCHAR 数据类型之间的隐式转换和显式转换。
假定有以下表和数据:
CREATE TABLE tchar(c1 CHAR(9)) CREATE TABLE tvarchar(c2 VARCHAR(9)) CREATE TABLE tbar(c2 BIT) CREATE TABLE tbit(c2 BIT) INSERT tbar VALUES(1) INSERT tbar VALUES(0)从 BIT 到 VARCHAR /从 VARCHAR 到 BIT 的隐式转换以及从 BIT 到 VARCHAR 的隐式转换:
INSERT tvarchar SELECT c2 FROM tbar
SELECT c2, char_length(c2) FROM tvarchar
c2,char_length(tvarchar.c2)
‘1’,1
‘0’,1
从 VARCHAR 到 BIT 的隐式转换:
INSERT tbit SELECT c2 FROM tvarchar
SELECT c2 FROM tbit
c2
--
0
1
从 BIT 到 CHAR /从 CHAR 到 BIT 的显式转换以及从 BIT 到 CHAR 的显式转换:
INSERT tchar SELECT CONVERT (CHAR(9), c2) FROM tbar
SELECT c1, char_length(c1) FROM tchar
c1,char_length(tchar.c1)
‘1’,9
‘0’,9
从 CHAR 到 BIT 的显式转换:
INSERT tbit SELECT CONVERT (BIT, c1) FROM tchar
SELECT c2 FROM tbit
c2
--
0
1
从 BIT 到 VARCHAR /从 VARCHAR 到 BIT 的显式转换以及从 BIT 到 VARCHAR 的显式转换:
INSERT tvarchar SELECT CONVERT(VARCHAR(9), c2)
FROM tbar
SELECT c2, char_length(c2) FROM tvarchar
c2,char_length(tvarchar.c2)
‘1’,1
‘0’,1
从 VARCHAR 到 BIT 的显式转换:
INSERT tbit SELECT CONVERT (BIT, c2) FROM tvarchar
SELECT c2 FROM tbit
c2
--
0
1