sql语言中3个点号" ' ` 的用法 一直搞不明白,尤其是`的用法,好像不是成对出现的,有时包括在"之中

sql语言中3个点号" ' ` 的用法 一直搞不明白,尤其是`的用法,好像不是成对出现的,有时包括在"之中,第1张

就是别名的作用,在查询中,比如select name as mycol from table 就是table表中有个字段叫name,但是我想把这个字段查询出来后的列名显示成mycol ;

比如select t.name from (select a.mycol from table a) as t 就是我把select a.mycol from table a 查询出来的集合命名成表t ;

以上的as都是可以省略不写的

转义要看情况,如果是你的库名、表明、字段名含有关键字或是不符合命名标准

即含字母数字下划线,都需要用[]括起来,以数字开头的也要用[]括起来

ESCAPE是用来转义字段内容的,比如说你要查询A字段里有_的内容

通常写法A like '%_%'由于_是通配符,这样系统就混乱了

所以需要escape转义 A like '%!_%' escape '!' 这样就能将_视为一个普通字符了

是什么数据库?如果是oracle数据库的话有个函数可能会帮助到你,那个函数是instr(目标字符串,'.',开始查找位置,第几次出现),这个函数的意思从最左边往右边找小数点的位置是第几个字符,然后你再用字符截取函数substr()配合使用就可以了。给你举个例子。假如有这个目标字符串:244.33.33.567,那么用字符串select instr('244.33.33.567',1,1) from dual这个sql得出的结果是小数点在字符串244.33.33.567中第一次出现的位置,结果是4.这样再用substr()配合使用就得到你想要的结果了。sql代码是:

select substr('244.33.33.567',1,instr('244.33.33.567','.',1,1)-1) from dual

select substr('244.33.33.567',1,instr('244.33.33.567','.',1,2)-1) from dual

select substr('244.33.33.567',1,instr('244.33.33.567','.',1,3)-1) from dual

如果你是在oracle数据库中用的话,可以执行上面三条代码看效果是不是你想要的。如果在其他数据库我就不知道适用不,因为我没有其他数据库的环境来试验。希望可以帮到你。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/56682.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存