一 查询语句

1 distinctkeyword消除反复行

当查询的结果数据中出现反复数据时。在查询条件中加上distinctkeyword消除反复行;
如:select distinct Sno from SC;

2 like匹配的通配符%和_

% :代表随意长度(包含0)的字符串,比如:like'a%b',表示以a开头。以b结尾的随意长度的字符串。
_ :代表随意单个字符。注意数据库的字符集为ASCII时一个汉字须要两个_,当字符集为GBK时仅仅须要一个_。比如:like'欧阳__';
注:当要查询的字符串本身就含有通配符%或_,这时就要用escape<'换码字符'>短语。对通配符进行转义了,比如:select  Cno,Ccredit from Course where Cname
like 'DB\_Design' escape '\';   escape'\'表示“\”为换行字符,这样匹配串中紧跟在“\”后面的字符“_”不再具有通配符的含义。转义为普通的“_”字符

3  涉及空值的查询

当查询某个字段值为空的条件下,字段与字段值之间要用"IS",不能用"="取代。比如:  select   Sno,Cno from SC where Grade IS NULL;

4  有关升序降序

如:select * from Student order by Sdept, Sage desc;
查询结果按所在系的系号(Sdept)升序排列,同一系中的学生按年龄降序排列

5  关于聚集函数的一些注意

在聚集函数(如:count() sum() avg() max() min()等)遇到空值时,都跳过空值而仅仅处理非空值。注意:where字句中是不能用聚集函数作为条件表达式的

6   group by分组条件中的having短语指定筛选条件

假设group by分组后。还要要求按一定的条件对这些组进行筛选,终于仅仅输出满足指定条件的组,能够使用having短语指定筛选条件;
如:select Sno from SC group by Sno having count(*) > 3;       这里先用group by字句按Sno进行分组。然后再用聚集函数count 对每一组计数,having短语给出了选择组的条件。仅仅有满足条件的组(即元组个数>3)才会被选出来
注意:where字句作用于基本表或视图,从中选择满足条件的元组。having短语作用于组,从中选择满足条件的组

7   关于嵌套查询的注意

嵌套查询是将一个查询块(子查询)嵌套在还有一个查询块(父查询)的where字句或having短语的条件中的查询。
须要特别指出的是,子查询的select语句中不能使用order by字句,order by字句仅仅能对终于查询结果排序

8   带有exists谓词的子查询

exists代表存在量词。所以带有exists谓词的子查询不返回不论什么数据,仅仅产生逻辑真‘TRUE’,或逻辑假‘FALSE’。

比如:select Sname from Student where exists (select * from SC where Sno=Student.Sno and Cno='1');
由exists引出的子查询,其目标列表达式通经常使用*,由于带exists的子查询仅仅返回真值或假值,给出别名无实际意义

9   集合查询

集合操作主要包含并操作UNION,交操作INTERSECT和差操作EXCEPT。
union的使用比較多,将多个查询结果合并起来,系统会自己主动去掉反复元组,假设要保留反复元组则用union all操作符。
intersect的使用是获取多个查询结果中同样的结果(即取交集)
except的使用是用前一个查询结果减去后一个查询结果(即取差集)

二 插入语句

1  插入子查询结果

子查询不仅能够嵌套在select语句中。也能够嵌套在insert语句中。用以生成要插入的批量数据
比如:insert into Dept_age(Sdept, Avg_age)  select Sdept, avg(Sage) from Student group by Sdept;

三 改动语句

1  改动表中全部数据的值

如:update Student set Sage=Sage+1;

四 模式的删除

删除模式语句:drop schema  <模式名> <cascade | restrict>
选择cascade(级联),表示在删除模式的同一时候把该模式中所有的数据库对象所有一起删除
选择restrict(限制),表示假设该模式中定义了下属的数据库对象(如:表,视图等)。则拒绝该删除语句的运行。仅仅有当该模式下没有不论什么下属的对象时才干运行drop schema语句

SQL操作语句中的注意点的更多相关文章

  1. mysql简单的sql操作语句

    一,常用.简单的SQL操作语句 1.数据库操作: 1)创建数据库: create database database_name: 创建并设置字符编码 create database database_ ...

  2. mongodb 操作语句与sql操作语句对比

    上行:SQL 操作语句 下行:Mongo 操作语句 CREATE TABLE USERS (a Number, b Number) db.createCollection("mycoll&q ...

  3. Microsoft SQL - 操作语句

    操作语句(Operation Statement) 操作数据库 创建数据库 关键字:create database 用于创建各种数据库对象(数据库.表.触发器.存储过程等) 格式如:create &l ...

  4. SQL操作语句

    SQL语句与Mysql的语句大体上比较相似.以下是sql server的一套练习题,是很好的数据库操作语句学习资料,学校的学习资料,在此整理了以下. 数据库exam:这是一个模拟电子商务,网上直销的数 ...

  5. 关于sql查询语句中的别名

    sql语句中给子查询或其他查询类型加别名的时候可能会报错 java.sql.SQLException: 无法转换为内部表示 原因是select返回类型的实体类中没有写该别名 原来的实体类 更改后的实体 ...

  6. SQL 操作语句

    SQL Server T-SQL高级查询 高级查询在数据库中用得是最频繁的,也是应用最广泛的. Ø 基本常用查询 --select select * from student; --all 查询所有 ...

  7. SQL查询语句中的 limit offset(转 )

    经常用到在数据库中查询中间几条数据的需求 比如下面的sql语句: ① selete * from testtable limit 2,1; ② selete * from testtable limi ...

  8. SQL操作语句之查询及删除重复记录的方法

    delete from 表 where id not in(select min(id) from 表 group by name ) //删除重复名字的记录 删除之前请用语句 select * fr ...

  9. 关于SQL连接语句中的Integrated Security=SSPI/ture/false

    解决方法:即:Security Support Provider Interface设置Integrated Security为 True 的时候,连接语句前面的 UserID, PW 是不起作用的, ...

随机推荐

  1. hdu3278Puzzle

    其实最终的结果无非是中间8个方块是相同的颜色,外面16个方块是另外两种颜色.那么其实可以把外面两种颜色看作是0,中间的颜色看做是1. 那么题目就变成了把那种颜色看做1,而其它两种颜色看做0,可以用最少 ...

  2. bellman_ford算法

    给定一个源点,求最短路径,那么存在以源点为根的最短路径树因为最短路径具有最优子结构的性质,所以我们可以先求出树的第一层,然后再求出树的第二层,以此类推bellman_ford算法就是按照这种思想求最短 ...

  3. JS脚本加载与执行对性能的影响

    高性能JavaScript-JS脚本加载与执行对性能的影响 在web产品优化准则中,很重要的一条是针对js脚本的加载和执行方式的优化.本篇文章简单描述一下其中的优化准则. 1. 脚本加载优化 1.1 ...

  4. ASP.NET之Cookie(坑爹的Response.Cookies.Remove)

    原文:ASP.NET之Cookie(坑爹的Response.Cookies.Remove) 在web开发中Cookie是必不可少的 .NET自然也有一个强大的Cookie操作类,我们用起来也非常方便, ...

  5. SQL Server,Access数据库查询易混点和C#中parameter指定参数长度的优缺点

    在学校的时候就经常做一些网站,所以这次在公司实习,组长第一次给了一个企业的网站还是很快的完成了.中间并没有遇到什么大的问题,但是还是遇到了两个新手非常容易混淆的小问题,所以拿出来跟大家分享一下. 主要 ...

  6. InputStreamReader 和 OutputStreamWriter类使用方法简单介绍,及演示。

    InputStreamReader 和 OutputStreamWriter类使用方法简单介绍. 一.InputStreamReader类 InputStreamReader 将字节流转换为字符流.是 ...

  7. uva 11427 - Expect the Expected(概率)

    题目链接:uva 11427 - Expect the Expected 题目大意:你每天晚上都会玩纸牌,每天固定最多玩n盘,每盘胜利的概率为p,你是一个固执的人,每天一定要保证胜局的比例大于p才会结 ...

  8. Android KitKat 4.4 Wifi移植AP模式和网络共享的调试日志

    Tethering技术在移动平台上已经运用的越来越广泛了.它能够把移动设备当做一个接入点,其它的设备能够通过Wi-Fi.USB或是Bluetooth等方式连接到此移动设备.在Android中能够将Wi ...

  9. HTML&lt;!DOCTYPE&gt; 宣示

    在html页面,下面这行代码到底有什么用呢? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" & ...

  10. 当用户登录,经常会有实时的下拉框,例如,输入邮箱,将会@qq.com,@163.com,@sohu.com

    如图所示, 码,如以下:<input id="user_sn" class="loginInput" name="user_sn" t ...