2022年小布老师SQL学习笔记.docx
《2022年小布老师SQL学习笔记.docx》由会员分享,可在线阅读,更多相关《2022年小布老师SQL学习笔记.docx(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - Liao SQL基础介绍 Oracle 11g SQL Fundamentals Training Introduction 1、primary key 主键 表中的唯独的标示 非空 2、foreign key 外键 在本表中引用的另外一张表的主键 3、ER 实体关系模型4、SQL 的分类4.1、Data manipulation languageDML 数据操作语言Select 查询数据 Insert 插入数据 Update 更新数据 Delete 删除数据 Merge 合并数据 4.2、Data definition languageDDL
2、 数据定义语言 Create 创建表 Alter 修改表 Drop 删除表 Rename 重命名表 Truncate 截取 Comment 4.3、Data control languageDCL 数据掌握语言 Grant Revoke 取消 4.4、Transaction control事物掌握 Commit 提交 Rollback 回滚 Savepoint SQL show user -查看当前用户 USER is SYS desc dba_users -查看全部用户 SQL set lines 200 SQL select username,account_status from dba
3、_users; USERNAME ACCOUNT_STATUS - - 名师归纳总结 PERFSTAT OPEN 第 1 页,共 36 页HR OPEN OE OPEN SH OPEN - - - - - - -精选学习资料 - - - - - - - - - OPS$ORACLE USER01 OPEN OPEN DIP EXPIRED & LOCKED IX EXPIRED & LOCKED MDDATA EXPIRED & LOCKED PM EXPIRED & LOCKED BI EXPIRED & LOCKED SQL select table_name from user_tabl
4、es; -查看存在的表-字符串和日期型是左对齐,数字型是右对齐,表头是大写;SQL select * from departments; DEPARTMENT_ID DEPARTMENT_NAME LOCATION_ID MANAGER_ID - - - - 10 Administration 200 1700 20 Marketing 201 1800 30 Purchasing 114 1700 01-Restricting Data Using the SQL SELECT Statement 1、算数表达式+ - * / 可以用于除 FROM 子句的其他子句SQL select las
5、t_name,salary, salary + 300 from employees; LAST_NAME SALARY SALARY+300 - - - Walsh 45331.68 45631.68 Feeney 45190.56 45490.56 107 rows selected. -算数表达式中有 NULL值结果为 NULL -和字符串做运算时,结果为字符串;2、别名用双引号括起来 不能用于 WHERE 子句 select last_nameas Name,commission_pct as Comm from employees; Name - - Ozer Bloom Fox C
6、omm .25 .2 .2 Order by 中可以使用别名和指定序号名师归纳总结 - - - - - - -第 2 页,共 36 页精选学习资料 - - - - - - - - - 3、链接 | 将两个字段连起来显示-两个字段中插入空格 select last_name | | job_id as Employees from employees; Employees - OConnell SH_CLERK Grant SH_CLERK Whalen AD_ASST select last_name | is a |job_id as Employees from employees; Em
7、ployees - OConnell is a SH_CLERK Grant is a SH_CLERK; Whalen is a AD_ASST q可以输出“ ”单引号 试验证明应当是输出一段自定义字符 4、distinct 查不同的值(范畴是整个 SELECT 后的全部字段)select distinctdepartment_id from employees; 02-Restricting and Sorting Data 补充 where 子句:1)子句内的需要比较的字符需要用单引号引起来 大小写 的;2)子句假如比较的是日期字符(默认的格式是 3)运算符(比如 where xxx=1
8、23 ),而且字 符是区分 日-月-年),需要留意日期格式;名师归纳总结 - - - - - - -第 3 页,共 36 页精选学习资料 - - - - - - - - - 例子:Between and: select emp_name,sal where sal between 2500 adn 3000; Select emp_name,sal where emp_name where emp_name between tony adn suen 字符也可以比较,A-Z,这样比较Like 通配符 % 代表 0 或者多个字符 _ 代表 1 个字符 Select emp_name from e
9、mp where empname like 张 % 4)IS NULL / IS NOT NULL 字段是否为空 WHERE 子句里判定5)规律运算符AND OR NOT 1、Escape 字符转义SQL select last_name,job_id from employees 2 where job_id like %SA_% escape ; 是| 或者其他的escape 来定义转义字符,也可以-escape 是将斜线设置为转义字符,把下划线转义成了一个一般的字符名师归纳总结 - - - - - - -第 4 页,共 36 页精选学习资料 - - - - - - - - - LAST_
10、NAME - - JOB_ID Russell Partners Errazuriz SA_MAN SA_MAN SA_MAN 2、SQL 执行优先级名师归纳总结 - - - - - - -第 5 页,共 36 页精选学习资料 - - - - - - - - - 补充:排序 ORDER BY 默认是升序, DESC是降序;ORDER BY子句里可以使用别名, WHERE ,group by , having子句不能使用Order by N 后面可以自己加数字,代表 SELECT第 N 个字段,但不值得举荐;Order by 后面可以跟多个字段, 表示先依据第一个字段先排序,然后再第一个字段中相
11、同的值中,其次例再排序;假如有 NULL值,升序是放到最终,降序是放到开头;但也可以自己转变:表的别名:另外:1、 form 子句的别名和国际标准不一样:不能加 AS,其他子句可以;2、 表的别名设置后,其他地方使用表就只能用别名;列的别名就不用这样Where 子句不能包含多组函数,而且3、替换变量&和& 简洁的字符串的替换; 几乎可以适用全部子句是客户端软件的功能SQL select last_name,salary from employees 号2 where employee_id=&employee_num; 如是字符串和日期肯定要加单引Enter value for employe
12、e_num: 123 old 2: where employee_id=&employee_num new 2: where employee_id=123 LAST_NAME SALARY - - 名师归纳总结 Vollman 50161.44 第 6 页,共 36 页双&替换变量后, 同一个变量, 只用输入一次;- - - - - - -精选学习资料 - - - - - - - - - 4、Define 定义变量(适合用在批处理里面)SQL define employee=200 SQL select employee_id,last_name from employees 2 where
13、 employee_id=&employee; old 2: where employee_id=&employee new 2: where employee_id=200 EMPLOYEE_ID LAST_NAME - - 200 Whalen Set verify off 关闭提示 Set verify on 打开提示03-Using Single-Row Functions to Customize Output 单行函数1 、函数名师归纳总结 - - - - - - -第 7 页,共 36 页精选学习资料 - - - - - - - - - 2、单行函数 :字符串函数,数值函数,日期
14、函数,转换函数 conversion ,通用函数 general 2.1、字符串函数Lower 字符变大写 Upper 字符变小写 Initcap 首字大写2.2、字符串操作函数SQL select concat12345,67890 from dual;-将两个字符串连接起来CONCAT12 - 1234567890 from dual; -截取 1 到 5 喂SQL select substr123456789,1,5SUBST - 12345 SQL select substr123456789,5 from dual;-截取 5 位以后的SUBST - 56789 SQL select
15、 length 1234567890 from dual; -运算字符串的长度 LENGTH1234567890 - 10 SQL select instr1234567890,0 from dual; -查看 0 所在的位置 INSTR1234567890,0 - 名师归纳总结 - - - - - - -第 8 页,共 36 页精选学习资料 - - - - - - - - - 10 SQL select lpad12345,10,* from dual; -在左侧添加指定的字符 LPAD1234 - *12345 SQL select rpad12345,10,* from dual; -在
16、右侧添加指定的字符 RPAD1234 - 12345* SQL select replace1234567890,1,0 from dual; -替换字符 REPLACE1 - 0234567890 SQL select trim1 from 1234567890 from dual; -去除字符 TRIM1F - 234567890 2.3、数值函数2.3.1 、Round 数值 ,保留小数点的位数 0 为小数点位正值向右移,负值向左移,进行四舍五入 ;名师归纳总结 - - - - - - -第 9 页,共 36 页精选学习资料 - - - - - - - - - 2.3.2 、trunc
17、数值 ,保留小数点的位数 0 为小数点位 直接去掉后面的值正值向右移, 负值向左移,2.3.3 、Mod 数值,除数 取余数 mod1600,500 1600/500 余 100 常常用于判定数值的奇偶 mod数值, 2 2.4、日期函数 date Sysdate显示系统时间 SQL select sysdate from dual; SYSDATE - 2022-02-22:13:50:30 Last_day 日期 显示当月的最终一天 SQL Select last_day 20220221 from dual; LAST_DAY20220221 - 2022-02-29:00:00:00
18、Add_months日期 ,增加的月数 SQL Select add_months 20220222,1 from dual; ADD_MONTHS2022022 - 2022-03-22:00:00:00 名师归纳总结 - - - - - - -第 10 页,共 36 页精选学习资料 - - - - - - - - - 04-Using Conversion Functions and conditional Expressions 转换函数1、To_char 日期转字符SQL select employee_id, to_charhire_date,YYYY-MM-DD hired 2 f
19、rom employees 3 where last_name=Higgins; EMPLOYEE_ID HIRED - - 205 1994-06-07 2、加 fm 去掉前导字符SQL select employee_id,to_charhire_date, fmYYYY-MM-DD hired 2 from employees 3 where last_name=Higgins; EMPLOYEE_ID HIRED - - 205 1994-6-7 显示时间SQL select employee_id,to_charhire_date,YYYY-MM-DD HH24:MI:SS hire
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 年小布 老师 SQL 学习 笔记
限制150内