度量快速开发平台-专业、快速的软件定制快开平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 部件 流程 SQL
查看: 156|回复: 7

[分享] SQL中的SELECT 简单查询语句总结

[复制链接]

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
发表于 2018-6-11 18:15:15 | 显示全部楼层 |阅读模式
  1. -scott用户不能使用,使用system登录
  2. --修改用户scott账户解锁
  3. ALTER USER SCOTT ACCOUNT UNLOCK;
  4. --重新设置密码identified被识别的
  5. alter user scott identified by tiger;

  6. --选择 所有字段 scott用户部门表
  7. SELECT * FROM scott.dept;
  8. --员工表
  9. SELECT * FROM scott.emp;

  10. --SELECT{*, column [alias],...}FROM table;
  11. SELECT empno,ename,sal FROM scott.emp;

  12. --SELECT语句中的算术表达式
  13. SELECT empno,ename,sal,sal * 12 FROM scott.emp;

  14. --运算符的优先级
  15. SELECT empno,ename,sal,sal * 12 + 100 FROM scott.emp;
  16. SELECT empno,ename,sal,sal * (12 + 100) FROM scott.emp;

  17. --字符串的连接操作符 \\(相当于java的++)
  18. --把两个字段的数据使用_连接起来
  19. SELECT empno ||'_'|| ename FROM scott.emp;

  20. /**
  21. 重点:NULL 空值
  22. 空值是指不可用,未分配的值
  23. 空值不等于零或空格
  24. 任意类型都可以支持空值
  25. 包括空值的任何算术表达式都等于空
  26. */
  27. --查询scott用户的emp表的所有列
  28. SELECT * FROM scott.emp;
  29. --查询scott用户的emp表的所有列,条件为comm等于0
  30. SELECT * FROM scott.emp WHERE comm = 0;
  31. --查询scott用户的emp表的所有列,条件为comm等于空字符串
  32. SELECT * FROM scott.emp WHERE comm = '';
  33. --查询scott用户的emp表的所有列,条件为comm等于空
  34. SELECT * FROM scott.emp WHERE comm = NULL;
  35. SELECT * FROM scott.emp WHERE comm IS NULL;
  36. SELECT * FROM scott.emp WHERE comm IS NOT NULL;
  37. SELECT empno,ename,sal,comm,(sal + comm,sal) * 12 FROM scott.emp;

  38. --nvl函数(Java的方法,传参数进去返回结果)
  39. --nvl(第一个参数,第二个参数),如果第一个参数为null,则取第二个参数
  40. SELECT empno,ename,sal,comm,NVL(sal + comm,sal) * 12 FROM scott.emp;

  41. --定义字段的别名,注意,别名不支持使用单引号
  42. SELECT empno,ename,sal,sal * 12 AS yearsal FROM scott.emp;
  43. SELECT empno,ename,sal,sal * 12 yearsal FROM scott.emp;
  44. SELECT empno,ename,sal,sal * 12 AS "yearsal" FROM scott.emp;
  45. SELECT empno,ename,sal,sal * 12 "yearsal" FROM scott.emp;
  46. --查询规定:empno叫做columnName列名,eID叫做columnLable列标签(自己定义的别名)
  47. SELECT empno AS eID,ename,sal,sal * 12 AS yearsal FROM scott.emp;
  48. --JDBC中 getInt(String columnLable) 如果有别名则是别名,如果没有别名则columnLable就是别名

  49. --DISTINCT关键字明显的有区别的
  50. --缺省情况下查询显示所有行,包括重复行
  51. SELECT deptno FROM scott.emp;
  52. --DISTINCT关键字去除重复数据
  53. SELECT DISTINCT deptno FROM scott.emp;
  54. --DISTINCT的作用范围是后面所有字段的组合
  55. SELECT DISTINCT deptno,ename FROM scott.emp;
  56. SELECT * FROM scott.emp;
  57. SELECT DISTINCT deptno,job FROM scott.emp;
  58. --为什么DISTINCT的作用范围是后面所有字段的组合
  59. SELECT DISTINCT deptno,ename FROM scott.emp WHERE deptno = 30;
  60. --DISTINCT deptno之后比如30只有一条记录,而30有6个ename,所以无法显示完整的数据

  61. --where子句 限制筛选数据,必须跟在from之后
  62. SELECT * FROM scott.emp WHERE deptno = 20 OR deptno = 30;
  63. SELECT * FROM scott.emp WHERE deptno = 30 AND mgr = 7698;

  64. --比较运算符
  65. SELECT * FROM scott.emp WHERE sal >= 800 AND sal <= 1600;
  66. --between and
  67. SELECT * FROM scott.emp WHERE sal BETWEEN 800 AND 1600;
  68. --in 包含,in执行的时候会拆分成一堆的or
  69. SELECT * FROM scott.emp WHERE deptno = 20 OR deptno = 30;
  70. SELECT * FROM scott.emp WHERE deptno IN(20,30);
  71. --like模糊查询 区分大小写
  72. --%匹配所有 _匹配一个字符
  73. --查询所有以 "s" 开头的员工
  74. SELECT * FROM scott.emp WHERE ename LIKE 'S%';
  75. --查询所有以"s"结尾的员工
  76. SELECT * FROM scott.emp WHERE ename LIKE '%S';
  77. --查询名字中包含"S"的员工
  78. SELECT * FROM scott.emp WHERE ename LIKE '%S%';
  79. --查询名字中第二个字符是A的员工
  80. SELECT * FROM scott.emp WHERE ename LIKE '_A%';

  81. --优先级的规则 先and 再or
  82. SELECT ename,job,sal
  83. FROM scott.emp
  84. WHERE job='PERSIDENT'
  85. OR job='SALESMAN'
  86. AND sal>1500;

  87. SELECT ename,job,sal
  88. FROM scott.emp
  89. WHERE job='SALESMAN'
  90. OR (job='PERSIDENT'
  91. AND sal>1500);

  92. --order by 以...排序
  93. --descend 降序
  94. --ascend 升序
  95. --对结果集排序 order by asc(升序 默认) desc(降序)
  96. --注意:order by只能出现在sql语句的最后一行
  97. --按照薪水从低到高排序
  98. SELECT * FROM scott.emp ORDER BY sal;
  99. SELECT * FROM scott.emp ORDER BY sal asc;
  100. SELECT * FROM scott.emp ORDER BY sal desc;
复制代码


回复

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2018-6-11 18:15:47 | 显示全部楼层
回复 支持 反对

使用道具 举报

542

主题

5919

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
发表于 2018-6-12 17:00:44 | 显示全部楼层
回复 支持 反对

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2018-6-12 17:18:02 | 显示全部楼层
回复 支持 反对

使用道具 举报

542

主题

5919

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
发表于 2018-6-15 15:49:30 | 显示全部楼层
回复 支持 反对

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2018-6-15 17:45:33 | 显示全部楼层
回复 支持 反对

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2018-6-15 17:48:48 | 显示全部楼层
回复 支持 反对

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2018-6-15 17:49:05 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|重庆度量科技  本站关键词:快速开发平台

GMT+8, 2018-9-18 21:54 , Processed in 0.335011 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表