SQL语法的重要知识点总结

sql_rebel.jpg

好几年没写SQL语句了。现在到了新的team,需要用到数据库。作为QA的话时常需要使用客户端工具连接到数据库中找寻或修改数据。这么长时间没使用,一些SQL的使用技巧都忘得差不多了。晚上看了一些资料,花了1个多小时又捡起了曾经的知识。现在总结一下以方便以后查阅。

  1. SQL不是大小写敏感的。

  2. 分号是分割多条SQL语句的标准的分隔符,所以在单条SQL语句后面总加上分隔符是不会出错的。

  3. DISTINCT关键字用于剔除重复的结果数据。SELECT DISTINCT City FROM Customers;意味着从Customers表中返回不重复的City值。

  4. ORDER BY用于对查询结果排序。 ORDER BY column_name ASC表示递增排序,也是默认顺序,可以省略ASCORDER BY column_name DESC表示递减排序; ORDER BY后面可跟多个列名进行排序。

  5. 返回指定数目的记录。在SQL Server/MS Access中可以使用 SELECT TOP number|percent column_name(s) FROM table_name; MySQl中语法是 SELECT column_name(s) FROM table_name LIMIT number;Oracle中语法是SELECT column_name(s) FROM table_name WHERE ROWNUM <= number;. SELECT TOP number PERCENT * FROM table可以返回指定指定百分数的数据。

  6. 使用LIKE可以匹配字符串值,同时可以使用通配符。%匹配0或多个字符,_匹配一个字符,[charlist]匹配一组字符,[^charlist][!charlist]表示匹配不在此列表中的字符。

  7. 使用AS关键字可以给列或表起别名。也可以给组合后的列起别名,如 SELECT CustomerName, Address+', '+City+', '+PostalCode+', '+Country AS Address FROM Customers;

  8. 使用JOIN关键字可以合并两个或连个以上的表的数据行,要基于所有表中的某一列建立一个连接条件。Join有四种:

    • INNER JOIN返回两个表中满足条件的行数据。
    • LEFT JOIN返回左表所有行数据及满足条件的右表行数据。
    • RIGHT JOIN返回右表的所有行数据及满足条件的左表行数据。
    • FULL JOIN返回左表和右表所有行数据行。
  9. UNION用于合并两个或多个查询结果。要求查询结果的列数及数据类型要一样。

  10. SELECT INTO可以将一个表中数据插入到另一个新表中。如 SELECT * INTO CustomersBackup2013 FROM Customers;它还有个巧妙的用法是创建一个空的新表格,其schema与后者一致,方法是SELECT * INTO newtable FROM table1 WHERE 1=0;

  11. INSERT INTO SELECTSELECT INTO使用较相似,不同的是SELECT INTO会创建新表,而INSERT INTO SELECT是插入到已存在的表中。

  12. 一些常用的SQL函数。(注意这些函数并一定都是通用的,但所有数据库基本上都有类似的功能)

    聚合函数

    • AVG() - 求平均值
    • COUNT() - 返回行数
    • FIRST() - 返回第一个值
    • LAST() - 返回最后一个值
    • MAX() - 返回最大值
    • MIN() - 返回最小值
    • SUM() - 求和

    其他常用函数

    • UCASE() - 转换为大写
    • LCASE() - 转换为小写
    • MID() - 提取字符串
    • LEN() - 获取字符串长度
    • ROUND() - 对数据进行舍入
    • NOW() - 返回当前系统时间
    • FORMAT() - 格式化field的显示
  13. GROUP BY用于对使用了聚合函数的查询结果进行分组。这是一个很强大的语法。

  14. HAVING用于对使用了聚合函数的字段进行条件筛选。

如果要详细了解SQL的这些使用的话,我推荐http://www.w3schools.com/sql/default.asp。你不仅可以看到说明和示例,也可以随时实时练习。实在是不可不得的好网站。

转载于:https://www.cnblogs.com/huang0925/p/3226515.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360527.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java语法定制混淆,由撇号混淆的textpad语法高亮显示

我想知道在textpad的语法文件中放置什么来修复问题&#xff0c;例如&#xff0c;在html文件中&#xff0c;你正在写一个段落&#xff0c;而撇号会创建语法高亮&#xff0c;直到下一个aspostrophe .例如&#xff1a;Hi, I m an example.lol text here placeholder lorem ipsum I…

您需要了解的有关默认方法的所有信息

因此&#xff0c;默认方法是……昨天的新闻&#xff0c;对不对&#xff1f; 是的&#xff0c;但是使用一年后&#xff0c;积累了很多事实&#xff0c;我想将这些事实收集在一个地方&#xff0c;供刚开始使用它们的开发人员使用。 甚至有经验的人都可以找到他们不知道的一两个细…

RAC+ASM在单机上恢复的过程

IT168技术文档】网上也有类似的例子&#xff0c;但不尽详细&#xff0c;也没多花心思解释流程及原因&#xff0c;可能对初试者不太解惑。有感于此&#xff0c;故认真整理了恢复步骤即操作流程&#xff0c;望有助于同行朋友。 环境&#xff1a;正式环境是IBM4IBM5(RAC)&#xf…

php event_base_new,php event拓展基本使用

php event拓展基本使用2019-02-04 22:02:28(527)1. 确定io复用类型(select/poll/epoll)php$cfg new EventConfig();$cfg->avoidMethod("select");$cfg->avoidMethod("epoll");$base new EventBase($cfg);$sig Event::signal($base, SIGTERM, func…

OSGi服务测试助手:ServiceRegistrationRule

OSGi服务测试可以有效避免与悬挂的服务引用有关的问题。 就像我在写简单服务贡献验证中所承诺的那样&#xff0c;这次我引入了一个JUnit规则 &#xff0c;该规则有助于测试组件之间的交互。 OSGi服务测试组件交互 假设我们有一个服务&#xff0c;该服务通知根据whiteboard-pat…

php 在函数里打开链接,JavaScript中打开链接的几种方法介绍

如何使用JavaScript打开链接&#xff1f;本篇文章我们就来看看使用JavaScript打开链接的几种方法介绍。我们先来看一段代码使用Javascript实现打开链接&#xff0c;需要在location.href中替换要打开的链接的URL。location.href http://www.php.cn/blog.html;通过上述代码我们可…

三代基因组测序技术原理简介

考虑到cnblog不适合基因组领域这种类型的文章&#xff0c; 最终&#xff0c;我自己开通了公众号&#xff1a;碱基矿工&#xff0c;欢迎感兴趣的同学关注&#xff01; 也可以关注我的知乎&#xff1a;https://www.zhihu.com/people/yellowtree/activities 2018年1月修改&#x…

Java并发教程–锁定:显式锁定

1.简介 在许多情况下&#xff0c;使用隐式锁定就足够了。 有时&#xff0c;我们将需要更复杂的功能。 在这种情况下&#xff0c; java.util.concurrent.locks包为我们提供了锁定对象。 当涉及到内存同步时&#xff0c;这些锁的内部机制与隐式锁相同。 区别在于显式锁提供了其他…

POJ 1422 Air Raid (最小路径覆盖)

题意 给定一个有向图&#xff0c;在这个图上的某些点上放伞兵&#xff0c;可以使伞兵可以走到图上所有的点。且每个点只被一个伞兵走一次。问至少放多少伞兵。 思路 裸的最小路径覆盖。 最小路径覆盖 【路径覆盖】在一个有向图G(V, E<u,v>)中&#xff0c;路径覆盖就是在图…

自编码网络粒子群matlab,粒子群算法优化BP

这是数据1999 1611 1746 1277 753 323 229 7.10561325 1064 1414 1026 430 191 153 24.54521125 839 1197 857 301 168 139 …

在非托管对象中使用Spring托管Bean

即使我们想使用现有的最佳和最新技术&#xff0c;我们也必须处理遗留代码。 想象一下&#xff0c;新代码是用Spring框架的最新技术编写的&#xff0c;而旧代码根本不是用Spring编写的。 然后在非托管Spring对象中使用Spring托管Bean是我们必须处理的模式之一。 遗留代码具有非托…

lda php,主题模型︱几款新主题模型——SentenceLDA、CopulaLDA、TWE简析与实现

[导读]百度最近开源了一个新的关于主题模型的项目。文档主题推断工具、语义匹配计算工具以及基于工业级语料训练的三种主题模型&#xff1a;LatentDirichlet Allocation(LDA)、SentenceLDA 和Topical Word Embedding(TWE)。一、Familia简介帮Familia&#xff0c;打个小广告~ F…

Spring项目中的Netflix Archaius属性

Archaius基础 Netflix Archaius是用于管理应用程序配置的库。 考虑一个属性文件“ sample.properties”&#xff0c;其中包含一个名为“ myprop”的属性&#xff1a; mypropmyprop_value_default这是使用Archaius加载文件的方式&#xff1a; ConfigurationManager.loadCascad…

linux进程之间传递句柄

参考网上的实现&#xff0c;进行了一点改进&#xff0c;本来想用FIFO实现的&#xff0c;后来发现不行&#xff0c;必须使用系统的sendmsg函数&#xff0c;代码格式有点乱&#xff0c;不过功能可以实现&#xff0c;改天有空整理一下~~ 讲究看哈~ #include <sys/types.h>#i…

php 中间代码,PHP内核中用户函数、内部函数和中间代码的转换

昨天和一朋友在邮件中讨论这样一个问题&#xff1a;zend_internal_function&#xff0c;zend_function&#xff0c;zend_op_array这三种结构是可以相互转化的&#xff0c;这三者的转化是如何进行的呢&#xff1f; 以此文&#xff0c;总结。在函数调用的执行代码中我们会看到这样…

Byteman –用于字节码操纵的瑞士军刀

我正在JBoss的许多社区中工作&#xff0c;有很多有趣的事情要谈论&#xff0c;以至于我自己无法将自己的每一分都缠住。 这就是为什么我非常感谢有机会不时地欢迎客座博客的主要原因。 今天是Jochen Mader&#xff0c;他是以代码为中心的书呆子群的一部分。 目前&#xff0c;他…

最短路径问题matlab作图,[MATLAB基础] matlab最短路径的输出问题,用了递归,但程序出错了,请大虾指点...

matlab最短路径的输出问题,用了递归,但程序出错了,请大虾指点 程序如下function shortestpath(w,p,q)c->;l;f;tsize(w);mt(1,1);azeros(m,m);vw;for k1:mfor i1:mfor j1:mb[w(i,j),w(i,k)w(k,j)];w(i,j)min(b);if w(i,j)~v(i,j)a(i,j)k;%a(i,j)10*a(i,j)k;vw;endendendendw;…

快速浏览JAX-RS请求与方法匹配

在本文中&#xff0c;我们来看一下JAX-RS中与资源方法匹配的HTTP请求 。 它是JAX-RS的最基本功能之一。 通常&#xff0c;使用JAX-RS API的开发人员不会接触&#xff08;或真正不需要知道&#xff09; 匹配过程的细节&#xff0c;请放心&#xff0c;由于我们的RESTful&#xff…

$stat php,php stat函数怎么用

php stat函数用于返回关于文件的信息&#xff0c;其语法是fstat(file)&#xff0c;参数file必需&#xff0c;指规定要检查的文件。php stat函数怎么用&#xff1f;定义和用法stat() 函数返回关于文件的信息。语法fstat(file)参数file必需。规定要检查的文件。说明获取由 file 指…

在Java中调用祖父母方法:您不能

在文章保护的重点中&#xff0c;我详细介绍了“受保护”如何扩展“包私有”访问。 我在那儿写道&#xff1a; 你能做的是 覆盖子类中的方法或 使用关键字super调用parent方法。 通常&#xff0c;这实际上是您可以使用受保护的方法完成的所有操作。 &#xff08;请注意&…