SQL中的SELECT_简单查询语句总结
--以scott用户下的dept和emp表为例
--注意:如果scott用户不能使用,请使用system用户登录
--解锁scott用户
ALTER USER SCOTT ACCOUNT UNLOCK;
--重新设置密码 (identified 被识别的)
alter user scott identified by tiger;
--选择 所有字段 scott用户部门表
SELECT * FROM scott.dept;
--员工表
SELECT * FROM scott.emp;
--SELECT{*, column [alias],...}FROM table;
SELECT empno,ename,sal FROM scott.emp;
--SELECT语句中的算术表达式
SELECT empno,ename,sal,sal * 12 FROM scott.emp;
--运算符的优先级
SELECT empno,ename,sal,sal * 12 + 100 FROM scott.emp;
SELECT empno,ename,sal,sal * (12 + 100) FROM scott.emp;
--字符串的连接操作符 \\(相当于java的++)
--把两个字段的数据使用_连接起来
SELECT empno ||'_'|| ename FROM scott.emp;
/**
重点:NULL 空值
空值是指不可用,未分配的值
空值不等于零或空格
任意类型都可以支持空值
包括空值的任何算术表达式都等于空
*/
--查询scott用户的emp表的所有列
SELECT * FROM scott.emp;
--查询scott用户的emp表的所有列,条件为comm等于0
SELECT * FROM scott.emp WHERE comm = 0;
--查询scott用户的emp表的所有列,条件为comm等于空字符串
SELECT * FROM scott.emp WHERE comm = '';
--查询scott用户的emp表的所有列,条件为comm等于空
SELECT * FROM scott.emp WHERE comm = NULL;
SELECT * FROM scott.emp WHERE comm IS NULL;
SELECT * FROM scott.emp WHERE comm IS NOT NULL;
SELECT empno,ename,sal,comm,(sal + comm,sal) * 12 FROM scott.emp;
--nvl函数(Java的方法,传参数进去返回结果)
--nvl(第一个参数,第二个参数),如果第一个参数为null,则取第二个参数
SELECT empno,ename,sal,comm,NVL(sal + comm,sal) * 12 FROM scott.emp;
--定义字段的别名,注意,别名不支持使用单引号
SELECT empno,ename,sal,sal * 12 AS yearsal FROM scott.emp;
SELECT empno,ename,sal,sal * 12 yearsal FROM scott.emp;
SELECT empno,ename,sal,sal * 12 AS "yearsal" FROM scott.emp;
SELECT empno,ename,sal,sal * 12 "yearsal" FROM scott.emp;
--查询规定:empno叫做columnName列名,eID叫做columnLable列标签(自己定义的别名)
SELECT empno AS eID,ename,sal,sal * 12 AS yearsal FROM scott.emp;
--JDBC中 getInt(String columnLable) 如果有别名则是别名,如果没有别名则columnLable就是别名
--DISTINCT关键字明显的有区别的
--缺省情况下查询显示所有行,包括重复行
SELECT deptno FROM scott.emp;
--DISTINCT关键字去除重复数据
SELECT DISTINCT deptno FROM scott.emp;
--DISTINCT的作用范围是后面所有字段的组合
SELECT DISTINCT deptno,ename FROM scott.emp;
SELECT * FROM scott.emp;
SELECT DISTINCT deptno,job FROM scott.emp;
--为什么DISTINCT的作用范围是后面所有字段的组合
SELECT DISTINCT deptno,ename FROM scott.emp WHERE deptno = 30;
--DISTINCT deptno之后比如30只有一条记录,而30有6个ename,所以无法显示完整的数据
--where子句 限制筛选数据,必须跟在from之后
SELECT * FROM scott.emp WHERE deptno = 20 OR deptno = 30;
SELECT * FROM scott.emp WHERE deptno = 30 AND mgr = 7698;
--比较运算符
SELECT * FROM scott.emp WHERE sal >= 800 AND sal <= 1600;
--between and
SELECT * FROM scott.emp WHERE sal BETWEEN 800 AND 1600;
--in 包含,in执行的时候会拆分成一堆的or
SELECT * FROM scott.emp WHERE deptno = 20 OR deptno = 30;
SELECT * FROM scott.emp WHERE deptno IN(20,30);
--like模糊查询 区分大小写
--%匹配所有 _匹配一个字符
--查询所有以 "s" 开头的员工
SELECT * FROM scott.emp WHERE ename LIKE 'S%';
--查询所有以"s"结尾的员工
SELECT * FROM scott.emp WHERE ename LIKE '%S';
--查询名字中包含"S"的员工
SELECT * FROM scott.emp WHERE ename LIKE '%S%';
--查询名字中第二个字符是A的员工
SELECT * FROM scott.emp WHERE ename LIKE '_A%';
--优先级的规则 先and 再or
SELECT ename,job,sal
FROM scott.emp
WHERE job='PERSIDENT'
OR job='SALESMAN'
AND sal>1500;
SELECT ename,job,sal
FROM scott.emp
WHERE job='SALESMAN'
OR (job='PERSIDENT'
AND sal>1500);
--order by 以...排序
--desc descend 降序
--asc ascend 升序
--对结果集排序 order by asc(升序 默认) desc(降序)
--注意:order by只能出现在sql语句的最后一行
--按照薪水从低到高排序
SELECT * FROM scott.emp ORDER BY sal;
SELECT * FROM scott.emp ORDER BY sal asc;
SELECT * FROM scott.emp ORDER BY sal desc;
SQL中的SELECT_简单查询语句总结的更多相关文章
- linq to ef(相当于sql中in的用法)查询语句
select * from DoctorInfo doctor where doctor.HosDepartId in (select Id from HospitalDepartment hd wh ...
- 浅谈sql 、linq、lambda 查询语句的区别
浅谈sql .linq.lambda 查询语句的区别 LINQ的书写格式如下: from 临时变量 in 集合对象或数据库对象 where 条件表达式 [order by条件] select 临时变量 ...
- T-SQL简单查询语句(模糊查询)
T-SQL简单查询语句 简单查询: 1.最简单查询(查所有数据) select * from 表名: 注:* 代表所有列 select * from info 2.查询指定列 select code, ...
- oracle中简单查询语句的格式及执行顺序分析
一条简单的查询sql格式如下: SELECT ... FROM .... [WHERE ...] --过滤单行 [GROUP BY ... [HAVING ...]]--GROUP BY对前面wh ...
- SQL 中的多条件查询
在应用程序开发中,多条件查询是个经常遇到的情况,最简单最麻烦的方法是把所有的可能情况都考虑到,但是无疑是繁琐的,而且很容易漏掉可能的情形,下面是SQL语句实现多条件查询的情况 select * fro ...
- sql中的不常见查询
1.对于CROSS APPLY 和 OUTER APPLY 的应用: CROSS APPLY 类似于INNER JOIN 但是,可以规定对于满足条件的数据需要关联几行,应用场景: 每个零件把第一个工单 ...
- SQL Serever学习9——基础查询语句
SQL语言概述 SQL是结构化查询语言(Structure Query Language),1974年提出,1979年被IBM实现,SQL语言已经成为关系型数据库的标准语言. 包括: DDL数据定义语 ...
- T-SQL简单查询语句
简单查询: 1.最简单查询(查所有数据)select * from 表名: 注:* 代表所有列select * from info 2.查询指定列select code,name from info ...
- MySQL简单查询语句练习
数据查询语法(DQL) DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ F ...
随机推荐
- POJ2728 Desert King —— 最优比率生成树 二分法
题目链接:http://poj.org/problem?id=2728 Desert King Time Limit: 3000MS Memory Limit: 65536K Total Subm ...
- Swift语言学习(三)基础操作符
操作符是用于检测.更改或者组合值的特殊符号或短语.例如,加法操作符 (+) 将两个数字加到一起 (如 let i = 1 + 2).更复杂的例子包括逻辑与操作符 && (如 if en ...
- 每次rand出来都是41?说好的随机数呢?!
rand()函数是C++标准函数库提供的随机数生成器,生成0-RAND_MAX之间的一个"伪随机"整数,理论上可以产生的最大数值为2^16-1,即32767. rand()函数不接 ...
- 生产环境下搭建mongodb复制集高可用环境(python)
环境描述:有三台ubuntu服务器,,每台服务器上已经有mongodb实例.创建3个mongo2.4的新实例,分别作为三个复制集节点,同时保证了当前单节点环境的稳定 3台服务器都已经有单个mongo实 ...
- iOS copy/retain/assign
1 深复制:内容拷贝,源对象和副本对象指的是两个不同的对象,源对象引用计数器不变,副本对象引用计数器为1 2 浅复制:指针拷贝,源对象和副本对象指的都是同一个对象,对象引用计数器+1,相当于retai ...
- 用 SDL2 在屏幕上打印文本
打印完图片,是时候打印文字了.这里引用了SDL的字体扩展库,SDL2_ttf.lib,需要包含相应的头文件. 环境:SDL2 + VC++2015 下面的代码将在窗口打印一段文字,并对相应的操作做出响 ...
- 【旧文章搬运】PspCidTable攻与防
原文发表于百度空间,2009-03-29========================================================================== PspCi ...
- 看鸟哥的Linux私房菜的一些命令自我总结(一)
-显示目前所支持的语言 echo &LANG -修改语言成为英文系统 LANG=en_US -显示日历的命令 cal [[month] year] -惯用关机命令 shutdown 参数: ...
- Android 用Animation-list实现逐帧动画 (转载)
转自:http://blog.csdn.net/aminfo/article/details/7847761 第一步:先上图片素材,以下素材放到res/drawable目录下: http://blog ...
- ORACLE PL/SQL 实例精解之第一章 PL/SQL概念
1.传统一层一层传数据,而PLSQL作为独立的单元返回客户端,减少查询,减少网路传输的往返,高效 2.PL/SQL语句块 分为两种:命名(子程序,函数,包保存在数据库中,后期可以根据名称进行引用),匿 ...