第四十二天-第五十二 天:sql语句和语法的练习总结(一)
2017-06-26 22:20
260 查看
Oracle数据库对大小写特别敏感
select查询语句:所有的关键字逻辑操作符都是大写,小写好像系统会默认给你转大写,所有的字符串都是用单引号进行包含
1.查询时候,可以查询单个字段(column),数据库的列和行都是从1开始的,也可以查询所有的字段(*);
2.单个字段如果是数值型或者日期型就可以进行四则运算,null 与任何数四则运算都是null
3.字段之间可以用“||”进行连接,可以通过“||”把字符串加到多个字段之间
4.字段的别名可以用 a “A”或者 a AS A 来表示;双引号中的需要大写
5.distinct去重复行的关键字 ,加在查询关键字的后面
6.条件限制关键字where,后面可以加需要限制的条件,比如分组语句和排序语句,多个排序字段一般都是用 逗号进行链接
6.1where中要用到的几个判断的逻辑操作符:
------ >,=,<,>=,<=,<>不等于,between -and -,in(同一个字段的不同的数值),like 与{ 通配符%和单个字符_ }连用(模糊匹配),is null 赋值为null
7.null就是空,不是0也不是没有,它就是null,不能进行四则运算
8. 逻辑操作符:and与 or或 not非 特例:not in 不包括
9.排序条件:
order by asc(升序)+字段+desc(降序) 后面可以用 ,进行连接多个需要排序的字段 egg:a 字段 asc,b字段 desc
10.字符转换函数:
upper(字段)=‘’ 大写 ,lower(字段)=‘’小写,initcap(字段)=‘’大小写混合
表示字段的值转换后可以输入的类型;
11.字符串的操作函数:
concat(‘ ’ ,‘ ’)连接两个字符串,substr(’',n,m)切割,length(' ')求长度,instr(“”,“a”)字符在字符串中所在的位置
trim()可以去首尾的空格返回一个副本,也可以 去字符from字符串 中
lpad和fpad(‘字段’,字段设定的长度,未满填充的值)
12.数字操作函数:
round(num,n)取小数点后n位,四舍五入,n为负时候,表示小数点左边
trunc(num,n)直接截取小数点后n位
mod(num,n)num对n进行取余
to_num(““)字符串转数字
13.日期操作函数:
日期到字符串,to_char(date,"格式");
字符串到日期,to_date(char,"格式")
day的操作----next_day(‘日期’,'设置为具体的某天')
------next_day('日期',设置为曾加的天数)
------next_day(to_date('------','格式'),设置增加的天数)
--------last_day('日期')某个月的最后一天
month的操作---addmonth(‘日期’,增加的月份数)
----month_betwween('日期',‘日期’):
对日期进行,round和trunc操作后,仍然是一个完成的日期,包含完整的年月日,extract可以直接截取年或者月或者日的数字;
这里的日期必须符合你数据库中的日期格式,根据你数据库中设置的nls_date_format, 查询自己数据库中的格式:select nls_date_format from dual;
也可以手动的设置日期格式: alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS' 这个dual是一个万能的伪表,不存在,所以是万能,可以查询数据和进行各
种你想进行的操作
14.= 赋值的时候的转换规则:
varchar2,char可以直接给number或者date
number,date也可以直接给varchar2
15. 表达式的比较操作:
只能由varchar2或者char到date或者number
16显式转换函数:
to_char(),to_date(),to_number();
to_char()包含:日期到char或者数字到char
to_char(date,'格式‘’);
yyyy表示年,dd表示日,mm表示月,year,month,day表示英文中的年月日,mon,dy表示去英文中的3个字符表示月和日,ddspth表示英文中的一个月中
的第几天,hh24:mi:ss am表示标准的格式日期
to_char(number,''格式); 9表示一个数字,0强制显示0,$表示一个美元占位符,l表示本地货币符号做为一个占位符, 点表示小数点,分号表示千分位
设置本地货币类型:alter session set nls_currency='货币类型';
to_number();字符传到数字的转换
17.nvl,nvl2函数:nvl(‘’,‘’)如果第一个字段为null则返回第二个字段,不为空返回它本身。nvl2(‘’,‘’,‘’)第一个字段为空返回第三个,不为空返回第二个,nullif(‘’,‘’)
如果两个字段相等的话返回null,不相等返回第一个字段的值。coalesce全为空返回空,不然返回当前不为空的值
18.条件表达式:case 字段 when 字段值 then ---- else--- end "字段的别名" decode(源字段,字段值,返回值,返回值) 关联字段
select查询语句:所有的关键字逻辑操作符都是大写,小写好像系统会默认给你转大写,所有的字符串都是用单引号进行包含
1.查询时候,可以查询单个字段(column),数据库的列和行都是从1开始的,也可以查询所有的字段(*);
2.单个字段如果是数值型或者日期型就可以进行四则运算,null 与任何数四则运算都是null
3.字段之间可以用“||”进行连接,可以通过“||”把字符串加到多个字段之间
4.字段的别名可以用 a “A”或者 a AS A 来表示;双引号中的需要大写
5.distinct去重复行的关键字 ,加在查询关键字的后面
6.条件限制关键字where,后面可以加需要限制的条件,比如分组语句和排序语句,多个排序字段一般都是用 逗号进行链接
6.1where中要用到的几个判断的逻辑操作符:
------ >,=,<,>=,<=,<>不等于,between -and -,in(同一个字段的不同的数值),like 与{ 通配符%和单个字符_ }连用(模糊匹配),is null 赋值为null
7.null就是空,不是0也不是没有,它就是null,不能进行四则运算
8. 逻辑操作符:and与 or或 not非 特例:not in 不包括
9.排序条件:
order by asc(升序)+字段+desc(降序) 后面可以用 ,进行连接多个需要排序的字段 egg:a 字段 asc,b字段 desc
10.字符转换函数:
upper(字段)=‘’ 大写 ,lower(字段)=‘’小写,initcap(字段)=‘’大小写混合
表示字段的值转换后可以输入的类型;
11.字符串的操作函数:
concat(‘ ’ ,‘ ’)连接两个字符串,substr(’',n,m)切割,length(' ')求长度,instr(“”,“a”)字符在字符串中所在的位置
trim()可以去首尾的空格返回一个副本,也可以 去字符from字符串 中
lpad和fpad(‘字段’,字段设定的长度,未满填充的值)
12.数字操作函数:
round(num,n)取小数点后n位,四舍五入,n为负时候,表示小数点左边
trunc(num,n)直接截取小数点后n位
mod(num,n)num对n进行取余
to_num(““)字符串转数字
13.日期操作函数:
日期到字符串,to_char(date,"格式");
字符串到日期,to_date(char,"格式")
day的操作----next_day(‘日期’,'设置为具体的某天')
------next_day('日期',设置为曾加的天数)
------next_day(to_date('------','格式'),设置增加的天数)
--------last_day('日期')某个月的最后一天
month的操作---addmonth(‘日期’,增加的月份数)
----month_betwween('日期',‘日期’):
对日期进行,round和trunc操作后,仍然是一个完成的日期,包含完整的年月日,extract可以直接截取年或者月或者日的数字;
这里的日期必须符合你数据库中的日期格式,根据你数据库中设置的nls_date_format, 查询自己数据库中的格式:select nls_date_format from dual;
也可以手动的设置日期格式: alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS' 这个dual是一个万能的伪表,不存在,所以是万能,可以查询数据和进行各
种你想进行的操作
14.= 赋值的时候的转换规则:
varchar2,char可以直接给number或者date
number,date也可以直接给varchar2
15. 表达式的比较操作:
只能由varchar2或者char到date或者number
16显式转换函数:
to_char(),to_date(),to_number();
to_char()包含:日期到char或者数字到char
to_char(date,'格式‘’);
yyyy表示年,dd表示日,mm表示月,year,month,day表示英文中的年月日,mon,dy表示去英文中的3个字符表示月和日,ddspth表示英文中的一个月中
的第几天,hh24:mi:ss am表示标准的格式日期
to_char(number,''格式); 9表示一个数字,0强制显示0,$表示一个美元占位符,l表示本地货币符号做为一个占位符, 点表示小数点,分号表示千分位
设置本地货币类型:alter session set nls_currency='货币类型';
to_number();字符传到数字的转换
17.nvl,nvl2函数:nvl(‘’,‘’)如果第一个字段为null则返回第二个字段,不为空返回它本身。nvl2(‘’,‘’,‘’)第一个字段为空返回第三个,不为空返回第二个,nullif(‘’,‘’)
如果两个字段相等的话返回null,不相等返回第一个字段的值。coalesce全为空返回空,不然返回当前不为空的值
18.条件表达式:case 字段 when 字段值 then ---- else--- end "字段的别名" decode(源字段,字段值,返回值,返回值) 关联字段
相关文章推荐
- 数据库SQL语言语法总结3---查询语句
- SQL语句方法语法总结(一)
- SQL 条件语句(练习总结)
- SQL语句方法语法总结(三)
- 基于sql语句的一些常用语法积累总结
- oracle数据库常用的sql语法语句总结
- SQL语句方法语法总结(二)
- 基于sql语句的一些常用语法积累总结
- oracle 基本语句练习(四) SQL1999 语法规范 cross join ,等值连接,不等值连接,自连接与外连接
- SQL语句的基本语法
- SQL语句的基本语法
- 动态sql语句基本语法
- 利用UltraEdit快速将SQL语句转换为符合VB.NET语法格式字符串
- SQL 语句总结 2006-11-13
- 超详细的SQL语句语法
- SQL语句的基本语法
- 动态sql语句基本语法
- SQL语句的基本语法
- PO部分常用table 总结 PO01A(采购单)sql 语句
- SQL语句的基本语法