`
tempsitegoogle
  • 浏览: 868934 次
文章分类
社区版块
存档分类
最新评论

sql的学习—查询的几个注意点

 
阅读更多

以上的表为查询所用的表

--between的用法,限制
select * from emp
where sal<1000 and sal>100;--
select *from emp
where sal between 100 and 1000;
--in的用法:IN 操作符允许我们在 WHERE 子句中规定多个值。属于若干个特定的值

select * from emp
where sal=1500 or sal=5000 or sal=3000;
select * from emp
where sal in(1500,3000,5000);

select * from emp
where sal not in(1500,3000,5000);--选择既不是1500,又不是3000也不是5000的字段
select * from emp
where sal!=1500 and sal!=3000 and sal!=5000;
select * from emp
where sal<>1500 and sal<>3000 and sal<>5000;--<>表示不等

--distinct

select * from emp
--
select ename from emp

select ename, sal+12 as "年薪" from emp;--输出以计算后的字段

select distinct ename from emp;--不允许重复
select distinct deptno from emp;--不允许重复
select deptno ,ename from emp;--列出所有的
select distinct deptno ,ename from emp;--列出以部门和名字不重复的记录
--select deptno ,distinct ename from emp;--顺序错误
select deptno ,ename from emp;
select ename from emp;

--top 的用法 tOP 子句用于规定要返回的记录的数目
select top 5 *from emp;
select top 10 percent *from emp;
select top 4 * from emp--把工资从1000到5000的人中取前四个(从大到小)
where sal between 1000 and 5000
order by sal desc;--降序 默认升序
select top 4 * from emp--把工资从1000到5000的人中取后四个(从小到大)
where sal between 1000 and 5000
order by sal ;
--nul
select * from emp where comm is null;--奖金为空的
select * from emp where comm is not null;--奖金不为空
--输出每个员工的姓名和工资(包括奖金)
select ename,sal*12+comm as "年薪" from emp;
--空不能参与任何数学运算,否则为空
select ename,sal*12+isnull(comm,0) as "年薪" from emp;

--isnull 函数

select* from emp order by sal
---按照sal升排序
select* from emp order by sal desc
---降序
select * from emp order by deptno,sal
--组合查询,先按第一个变量排序,在按第二个排序...
select * from emp order by deptno,sal desc
--组合排序,第一个升序,第二个降序
select * from emp order by deptno desc,sal desc
--desc 限制前面一个变

--like的应用
--通配符
-- % 表示0个或任意个字符
-- _ 占位符
-- [] [a-f],[a,f,g]
SELECT * from emp where ename like '%a%'
--查询名字中含有A的字符
SELECT * FROM emp where ename like'a%'
--查询首字母为a的字符
select * from emp where ename like '%d'
--查询尾字母为d的字段
select * from emp where ename like '_a%'
--查询第二个字母为a的字段
select * from emp where ename like '__a%'
--查询第三个字母为a的字段
select * from emp where ename like '%[a-f]%'
--[]表示所选字符数组,
select * from emp where ename like '[a,b,s]%'
--查询首字母为a,b,s
select * from emp where ename like '[^a,b,s]%'
--查询首字母既不是a,也不是b,

分享到:
评论

相关推荐

    2009达内SQL学习笔记

    在处理SQL语句时,其中所有的空格都被忽略(空格只用来分开单词,连续多个空格当一个用)。 SQL语句可以在一行上写出,建议多行写出,便于阅读和调试。 多条SQL语句必须以分号分隔。多数DBMS不需要在单条SQL语句后...

    21天学会SQL

    10.1.6 其他几个系统函数 208 10.2 分组查询 212 10.2.1 将表内容按列分组 212 10.2.2 聚合函数与分组配合使用 214 10.2.3 查询数据的直方图 215 10.2.4 排序分组结果 215 10.2.5 反转查询结果 216 10.2.6 使用...

    SQL命令集对初学者和老用户都有帮助

    这个网站包含以下几个部分: • - SQL 指令: SQL 如何被用来储存、读取、以及处理数据库之中的资料。 • - 表格处理: SQL 如何被用来处理数据库中的表格。 • - SQL语法: 这一页列出所有在这个教材中被提到的 SQL...

    经典全面的SQL语句大全

     注:使用运算词的几个查询结果行必须是一致的。  12、说明:使用外连接  A、left outer join:  左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。 SQL: select a.a, a.b, a.c, b.c, ...

    sql语句教程

    这个网站包含以下几个部分: · - SQL 指令: SQL 如何被用来储存、读取、以及处理数据库之中的资料。 · - 表格处理: SQL 如何被用来处理数据库中的表格。 · - SQL语法: 这一页列出所有在这个教材中被提到的 ...

    SQL 优化原则

    如果你有几个简单的数据库查询语句,你可以把它们整合到一个查询中(即使它们之间没有关系) (8) 删除重复记录: 最高效的删除重复记录方法 ( 因为使用了ROWID)例子: DELETE FROM EMP E WHERE E.ROWID &gt; (SELECT ...

    SQL+语法大全中文版

    SQL实现数据库查询,你将学会怎样使用这种查询 从数据表中取出信息,最后,你将学会怎样设计和建立自己的数据库。 注意: 通过下面几章对 SQL的介绍,你将对 SQL有足够的了解,从而可以有效地使用 Active Sever...

    SQL SERVER 2000开发与管理应用实例

    本书不但融合了作者在使用SQL Server 2000过程中遇到的各种常见问题和应用案例,还总结了作者几年来在CSDN 社区SQL Server版所解决的大量问题,面向实际项目需求,涉及不同类型的应用,能够多角度地引导读者学习相关...

    SQL语言与excel。VBA结和

    急用EXCEL的SQL用法,抄来欢乐小爪几篇文章,支持原创,留下小爪印:http://hi.baidu.com/huanhuanxiaozhua/blog EXCEL(VBA)~SQL 经典写法范本汇集(一) 2007-12-10 21:20 编前话:为了更系统的学习sql语句,小爪...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    读者可以学习到以下几个方面的技巧:  掌握Oracle数据库中独有的SQL强大特征;  读取并理解SQL执行计划;  快速分析并改进表现欠佳的SQL;  通过提示及配置文件等来控制执行计划;  在程序中优化查询而无需改动...

    SQL语法大全

    以上几个游标类型将直接影响到Recordset对象所有的属性和方法,以下列表说明他们之间的区别。 ------------------------------------------------------------- Recordset属性 adOpenForwardOnly adOpenKeyset ...

    MYSQL常用命令大全

     此操作使testuser能够在每一个test数据库中的表执行SELECT,INSERT和DELETE以及UPDATE查询操作。现在我们结束操作并退出MySQL客户程序:  mysql&gt; exit  Bye9! 1:使用SHOW语句找出在服务器上当前存在什么...

    SQLServer大数据库教案设计.doc

    当几个表中 必须存储同一种数据类型时,并且为保证这些列有相同的数据类型、长度和可空性时, 可以使用用户定义的数据类型。请看例子 例2.1 Use Northwind Exec sp_addtype uname,'Varchar(8)', 'Not Null ' 例...

    SQL必知必会(第3版)--详细书签版

    本书涉及不同平台上数据的排序、过滤和分组,以及表、视图、联结、子查询、游标、存储过程和触发器等内容,通过本书读者可以系统地学习到sql 的知识和方法。  本书注重实用性,操作性很强,适合于sql 的初学者学习...

    WindowsXP安装SQL_server2000的过程图解

    SQL Server 2000可以在同一台服务器上安装多个实例,也就是你可以重复安装几次。这时您就需要选择不同的实例名称了。建议将实例名限制在 10 个字符之内。实例名会出现在各种 SQL Server 和系统工具的用户界面中,...

    使用PL/SQL Developer连接Oracle数据库的方法图解

    Oracle可以直接到官网去下载,在安装中注意几个问题就行: 1.一定要记住自己全局数据库名字和口令,这个在后面连接的时候很重要。 2.还有一个需要注意的是,在安装的最后会有一个提示,最好点开口令管理,可以看到...

    【计算机毕业设计源码】基于javaapplet+SQL的酒店管理系统的设计与实现(源码+PPT+详细说明文档)

    为了帮助学习者更好地理解和提升编程技能,我们推荐以下几个经典酒店管理系统毕业设计源码。请提供这些源码的下载链接,并简要说明它们的主要功能和特色,以帮助感兴趣的学习者了解和模仿。同时,请提醒学习者在学习...

    java8集合源码分析-spark-sql:spark学习

    如果使用a进入输入模式,复制东西时开头几个字符常常会被删除。 分布式的基于内存的列式存储计算框架 MapReduce局限性 代码繁琐 只支持map和reduce方法, 效率低 不适合迭代多次/交互式/流式处理 框架多样化:会导致...

Global site tag (gtag.js) - Google Analytics