您的位置:首页 > 数据库

Postgresql常用的表字段操作语句以及其他一些SQL语句

2017-09-18 17:39 441 查看
1、插入数据:
INSERT INTO tb_student (sCode,sName) VALUES ('0001',
'李四');
2、更新数据:
UPDATE tb_student SET sName
= '王五' where sCode = '0001';
3、增加一个字段:
ALTER TABLE tb_student ADD sSex
varchar(255);
4、删除某一字段:
ALTER TABLE tb_student DROP
COLUMN sSex ;
5、更改字段名称
ALTER TABLE device_param RENAME COLUMN temperature_threshold_value TO max_temperature_threshold_value;

6. 给字段值的前或后面批量添加指定字符串
update container_temperature_humidity
set container_no = 'Test'|| container_no

8、字符串转timestamp
to_timestamp('2017-09-04 08:58:18','yyyy-mm-dd hh24:mi:ss')

9、求两个日期的差值:
如果是按相差24小时就算1天的话,直接用两个timestamp值相减得到一个interval值,然后获得此interval值的天数部分即可,如下:
select date_part('day', '2015-01-15 17:05'::timestamp - '2013-01-14 16:05'::timestamp);

如果要按timestamp的日期部分做相差天数,则可以转成date值,然后直接相减,如下:
select ('2015-01-15 17:05'::timestamp)::date - ('2015-01-14 19:05'::timestamp)::date;
例子:
select report_time, ((now()::timestamp)::date - (report_time::timestamp)::date) as day_count

from container_raw_data where container_no ='0000001';

获取PostgreSQL当前时间:now();
1.oracle数据库分页

select * from (select a.*,rownum ax from 表名 where rownum<=endrow) a where a.rc>=startrow
2.DB2数据库分页

Select * from (select rownumber() over() as ax,a.* from (select
* from 表名 order by列名) as a) where rc between startrow and endrow
3.SQL Server 2000数据库分页

Select top pagesize * from 表名 where 列名 not in(select top pagesize*page 列名 from 表名 order by列名) order
by列名
4.SQL Server 2005数据库分页

Select * from (select 列名,row_number() over(order by 列名1) as 别名from 表名) as t where t.列名1>=startrow
and t.列名 1<=endrow
5.MySQL数据库分页

Select * from 表名 limit startrow,pagesize (Pagesize为每页显示的记录条数)
6.PostgreSQL数据库分页

Select * from 表名 limit pagesize,offset startrow (Pagesize为每页显示的记录条数)
Select * from container_event limit 10 offset 1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐