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 ...
随机推荐
- JS Date.Format
// 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占 ...
- 实例对比剖析c#引用参数的用法
c#引用参数传递的深入剖析值类型的变量存储数据,而引用类型的变量存储对实际数据的引用.(这一点很重要,明白了之后就能区分开值类型和引用类型的差别) 在参数传递时,值类型是以值的形式传递的(传递的是值, ...
- javascript:Bing Maps AJAX Control, Version 7.0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JavaMail入门第五篇 解析邮件
上一篇JavaMail入门第四篇 接收邮件中,控制台打印出的内容,我们无法阅读,其实,让我们自己来解析一封复杂的邮件是很不容易的,邮件里面格式.规范复杂得很.不过,我们所用的浏览器内置了解析各种数据类 ...
- http get post
使用java代码模拟http请求 package ftp; import java.io.BufferedReader; import java.io.IOException; import java ...
- (旧)子数涵数·DW——网页制作的流程
PS:这是我很早以前的一个废掉的项目. 当时用的还是table排版,现在基本都是div了吧. 这个项目前段时间,我还抢救过一次,后来还是放弃了. 先行.网页制作的流程分为哪些呢? 一.网站策划(当时, ...
- CentOS 7.2 搭建 Openvpn 服务器
本文将以目前最新的openvpn-2.3.13.tar.gz为例来介绍如何在Linux系统中安装.配置及使用OpenVPN. 在这里,我们选用了一台预装CentOS 7.2 64位系统的计算机作为Op ...
- mysql awr v1.0.1发布
现发布mysql awr v1.0.1 修复问题: 1.galera cluster下flush table/index_statistcs时如果系统中业务ddl频繁可能会导致很多进程处于prepar ...
- 函数改变全局变量-JS
切记,一定按三步走: 1. 全局变量声明 2. 函数声明 3. 函数调用 正确做法: var dataStr = null; function remoteCallback(data) { dataS ...
- ALV用例大全
一.ALV介绍 The ALV Grid Control (ALV = SAP List Viewer)是一个显示列表的灵活的工具,它提供了基本功能的列表操作,也可以通过自定义来进行增强,因此可以允 ...