sql 查询基本语法
--输出奖金非空的员工的信息-select * from emp where comm <> null; --输出为空select * from emp where comm !=null; --输出为空select * from emp where comm=null; --输出为空error--总结:null不参与<> != = 运算--null可以参与is not isselect * from emp where comm is null; --输出奖金为空的员工的信息select * from emp where comm is not null; --输出奖金不为空的员工的信息
--输出每个员工的姓名 年薪(包含奖金) comm假设是一年的奖金select empno, ename,sal*12+comm "年薪" from emp;--此程序证明,任何数字与null参与数学运算的结果永远是null--正确的写法是:select empno, ename,sal*12+isnull(comm,0) "年薪" from emp;--isnull(comm,0)如果comm是null 就返回零,否则返回comm的值
--asc是升序的意思,默认可以不写,desc是降序select * from emp order by sal --默认是按照升序排序select * from emp order by deptno,sal; -- 先按照deptno升序排序,如果deptno相同,再按照sal升序排序select * from emp order by deptno desc,sal ;--先按照deptno降序排序,如果deptno相同,再按照sal升序排序,--记住sal是升序,不是降序--order by a desc,b,c,d desc 只对a产生影响, 不会对后面的b、c、d产生影响select * from emp order by deptno,sal desc;--问题:desc是否会对deptno产生影响?--答案:不会、--先按deptno升序,如果deptno相同,再按sal降序8、模糊查询格式:
匹配的条件通常含有通配符
表示任意0个或者多个字符
select * from emp where ename like '%A%'; --ename 只要含有字符A就输出
select * from emp where ename like 'A%'; --ename 只要首字母是A的就输出select * from emp where ename like '%A'; --ename 只要未字母是A的就输出
表示 单个字符
select * from emp where ename like '_A';--ename只要第二个字母是A的就输出
a到f中的任意单个字符,只能是a b c d e f中的任意一个
select * from emp where ename like '_[A-F]%';--把ename中第二个字母是A或B或C或D或E或F的数据输出
a或f
不是a,也不是b,也不是c的任意单个字符
select * from emp where ename like '_[^A-F]%';--把ename中第二个字母不是A也不是B也不是C也不是D也不是E也不是F的数据输出
注意:
匹配的条件必须用单引号括起来 不能省略 也不能改用双引号
通配符作为不同字符使用的情况
select * from 表明 where name like '%\%%' escape '\' --把name中包含有%的输出
select * from 表明 where name like '%m%%' escape 'm' // escape 后面的内容表明在其之后的元素当做转义字符
sql 查询基本语法的更多相关文章
- SQL Server 数据库子查询基本语法
一.SQL子查询语句 1.单行子查询 select ename,deptno,sal from emp where deptno=(select deptno ...
- SQL Server参数化SQL语句中的like和in查询的语法(C#)
sql语句进行 like和in 参数化,按照正常的方式是无法实现的 我们一般的思维是: Like参数化查询:string sqlstmt = "select * from users whe ...
- MySQL 基本语法(1.表字段操作,2表记录管理 3.运算符管理4.SQL查询 5.约束6.索引
.表字段的操作 .语法:alter table 表名 执行动作; .添加字段(add) .添加到末尾 alter table 表名 add 字段名 数据类型; .添加到第一列 alter table ...
- SQL DATEDIFF语法及时间函数 Sql 查询当天、本周、本月记录
SQL DATEDIFF语法及时间函数 Sql 查询当天.本周.本月记录 转:http://blog.csdn.net/Json1204/article/details/7863801?locatio ...
- SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等
SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...
- SQL查询语法30例
学好SQL查询:无他,概手熟耳. 1. 基础表: 学生表: 老师表: 课程表: 成绩表: 2. 题目: 1.查询名字中含有"华"字的学生信息 select * from 学生 wh ...
- SQL中部分语法整理
1.SELECT DISTINCT 语句 关键词DISTINCT用于返回唯一不同的值. 语法: SELECT DISTINCT 列名称 FROM 表名称 2.SELECT INTO语句 SELECT ...
- Oracle常用SQL查询(2)
三.查看数据库的SQL 1 .查看表空间的名称及大小 select t.tablespace_name, round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...
- SQL server存储过程语法及实例(转)
存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程cr ...
随机推荐
- thread_ThreadPoolExecutor
目录 1.基础知识 2.简单应用 3.异常机制 4.丰富的扩展 一.基础知识 构造函数. public ThreadPoolExecutor( int corePoolSize, 指的是保留的线程池大 ...
- AEAI EM费用管理系统V1.0.2版本开源发布
本次开源发布是AEAI EM费用管理系统 V1.0.2版,该版本是此产品的首个版本,产品现已开源并上传至开源社区http://www.oschina.net/p/aeai-em. 产品说明: AEAI ...
- where T : class的含义
public class Reflect<T> where T : class { 这是参数类型约束,指定T必须是Class类型. .NET支持的类型参数约束有以下五种:where T : ...
- VS如何显示行号
1.随便打开一个项目,可以看到代码框内并没有显示行号 2.选择“工具”-“选项”,打开后界面如下 3.选择文本编辑器,找到下图中的“行号”并勾选 4.行号可以显示了
- 【C#】第1章 VS2015中C#6的新特性
分类:C#.VS2015 创建日期:2016-06-12 一.简介 VS2015内置的C#版本为6.0,该版本提供了一些新的语法糖,这里仅列出个人感觉比较有用的几个新功能. 二.几个很有用的新特性 注 ...
- ASP.NET MVC进阶一
一.控制器相关 在Controller类中方法访问级别为public的方法,就是行为(Action). 如果不希望Controller类中的方法成为Action(可以在地址栏中被访问),有两种实现方式 ...
- PHP学习笔记:对命名空间(namespace)学习资料的翻译
Name collisions means: you create a function named db_connect, and somebody elses code that you use ...
- 选择使用c语言编写的phalcon框架
使用这个框架,我总结了如下几点考虑 1.这个框架速度快.纯c语言编写的框架,速度都比php框架快,省去了中间环节.当然,使用它不仅仅是性能考虑.因为如果为了解决php性能问题,完全可以有很多种方式,不 ...
- webpack打包
(1) 首先生成一个package.json文件 进入项目文件的根目录执行npm init 在根目录中生成一个package.json文件 (2)全局安装webpack 执行npm install ...
- 使用Python给要素添加序号
在ArcGIS的属性表中,由于编辑修改的原因,默认的FID或OID并不连续,经常需要给要素添加连读的序号,可使用Python代码完成. rec=-1 def autoIncrement(): glob ...