一、单引号和双引号(重要):
1、在mysql没啥区别
2、在pgsql中,实际字符串用单引号,双引号相当于mysql的``,用来包含关键字;
-- 单引号,表示user_name的字符串实际值
insert into t_user(user_name)values('test_seq');
二、数据类型转换:
1、场景:字符串默认情况下是text类型,浮点默认是numeric;
2、如果需要转换:
(1)第一种方式:在值的前面添加上具体类型即可
-- 字符串转成bit
select bit '1010101011';
(2)第二种方式,也可以在具体值的后面加 ::类型
select '1010101011'::bit(10);
(3)第三种方式,使用完整的转法:
-- 使用完整的写法,方式一和方式二实际上也是方式三的简写
select cast(varchar '1010101' as bit(10));
三、常见的数据类型:
1、booean类型:
(1)可以存储true,false,和null;
(2)pgsql对boolean类型不敏感,也可以是'yes'或者'no',大小写也不敏感;
(3)需要注意boolean类型之间的and 和 or运算:
a | b | a and b | a or b |
true | true | true | true |
true | false | false | true |
true | null | null | true |
false | true | false | true |
false | false | false | false |
false | null | false (注意,只要有一个为false就是false) |
null |
null | null | null | null |
2、数值类型:
(1)整型:
smallint:2位
int,int4,int,integer:都是4位
bigint,int8:8位
(2)浮点:
decimal(n,m),本质是numeric,pgsql会帮转换
numeric(n,m)
(3)序列,见表创建和序列
(4)针对数值类型操作:
^ 幂 几次幂 2^3 =8
|/ 平方根 |/4=2
@ 绝对值 @-5=5
& 与操作
| 或操作
<< 左移
>> 右移
函数:
pi()
round()
floor()
ceil()