「PostgreSQL」PostgreSQL数据类型格式转换

我们在进行数据库查询的时候, 传入的某些数值会与数据库字段类型不一致, 这时我们就需要进行类型转换

比如有表student:

name (VARCHAR) sex (VARCHAR) id (VARCHAR)
张三 1001
李四 1002
小红 1003

我想查询学号(id)为20的学生的名字:

SELECT name FROM student WHERE id = 1001;
可能报错 No operator matches the given name and argument type(s). You might need to add explicit type casts.

很明显, id 列是 VARCHAR 类型, 但是查询语句的类型为 数字类型, 此时我们就要进行数据格式转换:

以下有几种方式:

CAST( 字段 AS 你要转换为的数据类型 )


SELECT name FROM student WHERE id = cast(1003 as VARCHAR);

字段 :: 你要转换为的数据类型


SELECT name FROM student WHERE id = 1002 :: VARCHAR;

你可能感兴趣的:(疑难杂症)