大连某公司机试POSTGRESQL题目,个人回来后总结的答案

大连某公司机试POSTGRESQL题目,个人回来后总结的答案,第1张

概述机试失败了,给的是window 2003server的机器,postgresql 9.3,现在都习惯用ubuntu了自家笔记本都是ubuntu,以后面试不知道怎么办,回来参考postgresql官方文档一小时不到就全解决了,说实在的我真没接触过postgresql的存储过程,要我看着别人的代码模仿写真痛苦,尤其是没一点pgsql的语法基础,废话不说上题目和答案(说的是招聘JAVA结果全面的post 机试失败了,给的是window 2003server的机器,postgresql 9.3,现在都习惯用ubuntu了自家笔记本都是ubuntu,以后面试不知道怎么办,回来参考postgresql官方文档一小时不到就全解决了,说实在的我真没接触过postgresql的存储过程,要我看着别人的代码模仿写真痛苦,尤其是没一点pgsql的语法基础,废话不说上题目和答案(说的是招聘JAVA结果全面的postgresql汗颜。。。) 环境ubuntu,postgresql 9.3 1.恢复pg_dump的输出文件 psql create user mianshi superuser login createdb password 'mianshi' create tablespace mianshi_ts owner mianshi location '/windows/data/pgdata' create database mianshi owner=mianshi tablespace=mianshi_ts \q psql -h localhost -U mianshi \i mianshi.bak 2.postgresql 递归实现 create table tb_tree(ID int,pID int,name varchar(8000)); insert into tb_tree values(1,null,'祖父'),(2,1,'父亲'),(3,2,'本人'),(4,'弟弟'); with RECURSIVE t(ID,pID,name) as (select * from tb_tree where name='本人' union all select tb_tree.* from tb_tree,t where tb_tree.ID=t.pID) select * from t; 3.计算一个时间的年龄 select age(timestamp '1985-05-15 5:5:5'); 4.计算两个时间距离的天数 select current_date - (timestamp '2014-2-27 1:1:1')::date; 5.计算两个时间间隔的秒数 select extract(epoch from current_timestamp - (timestamp '2014-2-27 1:1:1')::date); 6.创建存储过程使用for遍历某个表 create or replace function mianshi_func01() returns voID as $$ declare --l_ID tb_tree.ID%type; --l_pID tb_tree.pID%type; --l_name tb_tree.name%type; l_record RECORD; begin for l_record in select * from tb_tree loop raise info 'ID%,父ID%,名称%',l_record.ID,l_record.pID,l_record.name; end loop; end; $$ language plpgsql; 7.使用游标遍历某个表 create or replace function mianshi_func02() returns voID as $$ declare l_ID tb_tree.ID%type; l_pID tb_tree.pID%type; l_name tb_tree.name%type; l_cursor cursor for select * from tb_tree; begin open l_cursor; fetch l_cursor into l_ID,l_pID,l_name; while found loop raise info 'ID%,l_ID,l_name; fetch l_cursor into l_ID,l_name; end loop; close l_cursor; end; $$ language plpgsql; 8.备份数据库完成后删除数据库 pg_dump -f another.bak mianshi drop database mianshi; 总结

以上是内存溢出为你收集整理的大连某公司机试POSTGRESQL题目,个人回来后总结的答案全部内容,希望文章能够帮你解决大连某公司机试POSTGRESQL题目,个人回来后总结的答案所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1177322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存