1.首先创建students表
CREATE TABLE students ( id integer NOT NULL, name character varying(255), sex character varying(255), class character varying(255), "like" character varying(255), school character varying(255), phone character varying(255) )
2.插入数据
INSERT INTO "public"."students" ("id", "name", "sex", "class", "like", "school", "phone") VALUES ('1', '大猫', '女', '一年级', '绘画', '第三小学', '2345'); INSERT INTO "public"."students" ("id", "name", "sex", "class", "like", "school", "phone") VALUES ('2', '小厌', '男', '三年级', '书法', '第四小学', '2346'); INSERT INTO "public"."students" ("id", "name", "sex", "class", "like", "school", "phone") VALUES ('3', '库库', '女', '二年级', '绘画', '第三小学', '2342'); INSERT INTO "public"."students" ("id", "name", "sex", "class", "like", "school", "phone") VALUES ('4', '艾琳', '女', '四年级', '书法,钢琴', '第四小学', '2349');
结果:
select * from students
如下图:
3.replace 的用法
replace(string text, from text, to text)
返回类型:text
解释:把字串string里出现地所有子字串from替换成子字串to
示例1:
select replace('一条黑色的狗','黑','黑白相间')
结果:一条黑色的狗 变成了 一条黑白相间色的狗
如下图:
示例2:
update students set name=replace(name,'大猫','小猫咪的姐姐')
结果:name为 ‘大猫'的这条数据name='小猫咪的姐姐'
示例3:
select * from students where school='第四小学' ORDER BY replace(name,'艾琳','1')
结果:
4.translate的用法
translate(string text, from text, to text)
返回类型:text
解释:把在string中包含的任何匹配from中的字符的字符转化为对应的在to中的字符。
示例1:
select translate('她真是好看', '好看','漂亮')
结果:
示例2:
select * from students where phone like '2%' ORDER BY translate(class, '一二三四','1234')
结果:
示例3:
select * from students where phone like '2%' ORDER BY translate(name, '库小厌猫咪艾','1234')
结果
结论:
有了translate再也不担心中文排序问题了(数据比较少的情况)
补充:pg中position、split_part、translate、strpos、length函数
我就废话不多说了,大家还是直接看代码吧~
select position('.' in '1.1.2.10'); select split_part('1.1.2.10','.',length('1.1.2.10') - length(translate('1.1.2.10','.',''))+1); select split_part('1.1.2','.',length('1.1.2') - length(translate('1.1.2','.',''))+1); select length(translate('1.1.2.10','.','a'))+1 as num select translate('1.1.2.10','.','') select strpos('1.1.2.10','.') select instr('1.1.2.10','.',1,3) select length('1.1.2.10') - length(translate('1.1.2.10','.',''))
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。