mysql中select语句子句,了解mysql中select语句操作实例

Select的语法

SELECT

[ALL | DISTINCT | DISTINCTROW ]

[HIGH_PRIORITY]

[STRAIGHT_JOIN]

[SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]

[SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]

select_expr, ...

[INTO OUTFILE 'file_name' export_options

| INTO DUMPFILE 'file_name']

[FROM table_references

[WHERE where_definition]

[GROUP BY {col_name | expr | position}

[ASC | DESC], ... [WITH ROLLUP]]

[HAVING where_definition]

[ORDER BY {col_name | expr | position}

[ASC | DESC] , ...]

[LIMIT {[offset,] row_count | row_count OFFSET offset}]

[PROCEDURE procedure_name(argument_list)]

[FOR UPDATE | LOCK IN SHARE MODE]]

SELECT用于恢复从一个或多个表中选择的行,并可以加入UNION语句和子查询。

每个select_expr都指示一个您想要恢复的列, table_references指示行从哪个表或哪些表中被恢复。

简单查询SELECT columna columnb FROM mytable;

ORDER BY查询SELECT college, region, seed FROM tournament ORDER BY region, seed;

SELECT college, region AS r, seed AS s FROM tournament ORDER BY r, s;

SELECT college, region, seed FROM tournament ORDER BY 2, 3;

--要以相反的顺序进行分类,应把DESC(降序)关键字添加到ORDER BY子句中的列名称中。默认值为升序;该值可以使用ASC关键词明确地指定。

SELECT a, COUNT(b) FROM test_table ORDER BY a DESC;

GROUP BY查询SELECT a, COUNT(b) FROM test_table GROUP BY a DESC;

SELECT COUNT(col1) AS col2 FROM t GROUP BY col2 HAVING col2 = 2;

-- HAVING不能用于应被用于WHERE子句的条目,不能编写如下语句:

SELECT col_name FROM tbl_name HAVING col_name > 0;

--而应该这么编写

SELECT col_name FROM tbl_name WHERE col_name > 0;

--HAVING子句可以引用总计函数,而WHERE子句不能引用:

SELECT user, MAX(salary) FROM users GROUP BY user HAVING MAX(salary)>10;

LIMIT查询SELECT * FROM tbl LIMIT 10; # Retrieve rows 0-9;

SELECT * FROM tbl LIMIT 5,10; # Retrieve rows 6-15;

--如果要恢复从某个偏移量到结果集合的末端之间的所有的行,您可以对第二个参数是使用比较大的数。

--以下语句可以恢复从第96行到最后的所有行:

SELECT * FROM tbl LIMIT 95,18446744073709551615;

SELECT...INTO OUTFILE

SELECT...INTO OUTFILE 'file_name'形式的SELECT可以把被选择的行写入一个文件中。该文件被创建到服务器主机上,因此您必须拥有FILE权限,才能使用此语法。file_name不能是一个原有的文件。

SELECT...INTO OUTFILE语句的主要作用是让您可以非常快速地把一个表转储到服务器机器上。如果您想要在服务器主机之外的部分客户主机上创建结果文件,您不能使用SELECT...INTO OUTFILE。在这种情况下,您应该在客户主机上使用比如“mysql –e "SELECT ..." > file_name”的命令,来生成文件。

SELECT...INTO OUTFILE是LOAD DATA INFILE的补语;用于语句的exort_options部分的语法包括部分FIELDS和LINES子句,这些子句与LOAD DATA INFILE语句同时使用。

在下面的例子中,生成一个文件,各值用逗号隔开。这种格式可以被许多程序使用SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'

FIELDS TERMINATED BY ','

OPTIONALLY ENCLOSED BY '"'

LINES TERMINATED BY '\n'

FROM test_table;

如果您使用INTO DUMPFILE代替INTO OUTFILE,则MySQL只把一行写入到文件中,不对任何列或行进行终止,也不执行任何转义处理。如果您想要把一个BLOB值存储到文件中,则这个语句是有用的。

UNION

UNION用于把来自许多SELECT语句的结果组合到一个结果集合中,语法如下:SELECT ...

UNION [ALL | DISTINCT]

SELECT ...

[UNION [ALL | DISTINCT]

SELECT ...]

列于每个SELECT语句的对应位置的被选择的列应具有相同的类型。(例如,被第一个语句选择的第一列应和被其它语句选择的第一列具有相同的类型。)在第一个SELECT语句中被使用的列名称也被用于结果的列名称。

如果您对UNION不使用关键词ALL,则所有返回的行都是唯一的,如同您已经对整个结果集合使用了DISTINCT。如果您指定了ALL,您会从所有用过的SELECT语句中得到所有匹配的行。

您可以在同一查询中混合UNION ALL和UNION DISTINCT。被混合的UNION类型按照这样的方式对待,即DISTICT共用体覆盖位于其左边的所有ALL共用体。DISTINCT共用体可以使用UNION DISTINCT明确地生成,或使用UNION(后面不加DISTINCT或ALL关键词)隐含地生成。

简单例子:(SELECT a FROM tbl_name WHERE a=10 AND B=1)

UNION

(SELECT a FROM tbl_name WHERE a=11 AND B=2)

ORDER BY a LIMIT 10;

ALL, DISTINCT和DISTINCTROW

ALL, DISTINCT和DISTINCTROW选项指定是否重复行应被返回。如果这些选项没有被给定,则默认值为ALL(所有的匹配行被返回)。DISTINCT和DISTINCTROW是同义词,用于指定结果集合中的重复行应被删除。SELECT DISTINCT a FROM table_name;

SELECT COUNT(DISTINCT a) FROM table_name;

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

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

相关文章

通过几个Hello World感受.NET Core全新的开发体验

2016年6月27日,这是一个特殊的日子,微软全新的.NET开发平台.NET Core的RTM版本正式发布。我个人将.NET Core的核心特性归结为三点,它们的首字母组成一个非常好记的简称——COM,分别代表的含义Cross-Platform、Open-Source和Modula…

Java多线程(六)之Deque与LinkedBlockingDeque深入分析

转载自 Java多线程(六)之Deque与LinkedBlockingDeque深入分析 一、双向队列 DequeQueue除了前面介绍的实现外,还有一种双向的Queue实现Deque。这种队列允许在队列头和尾部进行入队出队操作,因此在功能上比Queue显然要更复杂。下图…

matlab边算边出图命令,Matlab:不包含边境和工具栏的figure(移除保存图片的白边)...

Matlab:不包含边界和工具栏的figure(移除保存图片的白边)当我们使用matlab的imshow命令显示图片时,会有白框和工具栏出现。在保存图片时会出现白色的边框。下面将说明如何去除这些显示。Matlab启动时运行脚本script.m,文件位置在~/matlab/ directory。在…

JavaScript实现复选框全选与全不选的效果

//里面涉及到几张图片&#xff0c;有需要的可以联系我要&#xff0c;直接私信我就行&#xff0c;每天在这个点都会上线&#xff0c;看到就回&#xff0c;或者从我的资料里面找我的联系方式&#xff0c;收到之后会发给你们的<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1…

ASP.NET Core 运行原理剖析1:初始化WebApp模版并运行

之前两篇文章简析.NET Core 以及与 .NET Framework的关系和.NET Core的构成体系从总体上介绍.NET Core,接下来计划用一个系列对ASP.NET Core的运行原理进行剖析。 ASP.NET Core 是新一代的 ASP.NET&#xff0c;早期称为 ASP.NET vNext&#xff0c;并且在推出初期命名为ASP.NET …

深入并发包-ConcurrentHashMap

转载自 深入并发包-ConcurrentHashMap 前言 以前写过介绍HashMap的文章&#xff0c;文中提到过HashMap在put的时候&#xff0c;插入的元素超过了容量&#xff08;由负载因子决定&#xff09;的范围就会触发扩容操作&#xff0c;就是rehash&#xff0c;这个会重新将原数组的内容…

红帽、微软和 Codenvy 联合推出语言服务器协定(Language Server Protocol,LSP)项目

微软、红帽及容器开发环境供应商Codenvy本周在Red Hat DevNation开放源码大会上宣布将共同发展语言服务器协定&#xff08;Language Server Protocol&#xff0c;LSP&#xff09;项目&#xff0c;让不同的程序编辑器与集成开发环境&#xff08;IDE&#xff09;方便嵌入各种程序…

ConcurrentHashMap总结

转载自 ConcurrentHashMap总结并发编程实践中&#xff0c;ConcurrentHashMap是一个经常被使用的数据结构&#xff0c;相比于Hashtable以及Collections.synchronizedMap()&#xff0c;ConcurrentHashMap在线程安全的基础上提供了更好的写并发能力&#xff0c;但同时降低了对读一…

最全面的常用正则表达式大全

很多不太懂正则的朋友&#xff0c;在遇到需要用正则校验数据时&#xff0c;往往是在网上去找很久&#xff0c;结果找来的还是不很符合要求。所以我最近把开发中常用的一些正则表达式整理了一下&#xff0c;在这里分享一下。给自己留个底&#xff0c;也给朋友们做个参考。 转载至…

php access allow,PHP标头不适用于Access-Control-Allow-Origin

我使用jQuery File Upload plugin by Blueimp将图像上传到服务器.问题是,发送服务器是admin.example.com,存储图像的接收服务器位于www.example.com上.相同的域,不同的子域.XMLHttpRequest cannot load http://www.example.com/upload/. Origin http://admin.example.com is no…

.NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布&#xff0c;社区里涌现了很多文章&#xff0c;我也计划写个系列文章&#xff0c;原因是.NET Core的入门门槛相当高&#xff0c;很有必要写个深入浅出的系列文章&#xff0c;本节内容帮助你入门。我将可能…

java语言中的访问权限控制符有哪些,18.Java的访问控制符

Java的访问控制符一.类的成员的可见性对于类的成员变量和成员方法&#xff0c;我们可以通过设定一定的访问可见性来限定应用范围。(一).privateprivate表示当前类访问权限。如果类里的一个成员(包括成员变量、方法、构造器等)使用private访问控制符来修饰&#xff0c;则这个成员…

ConcurrentHashMap能完全替代HashTable吗?

转载自 ConcurrentHashMap能完全替代HashTable吗&#xff1f;关于ConcurrentHashMap在之前的ConcurrentHashMap原理分析中已经解释了原理&#xff0c;而HashTable其实大抵上只是对HashMap的线程安全的封装&#xff0c;在JDK7与JDK8中HashMap的实现中解释了HashMap的原理。 至此…

购物车的功能——界面源码

里面所用到的图片资源统一都在“我的资源”里面&#xff0c;相对应的图片是“ 购物车源码相关图片 ”http://download.csdn.net/detail/qq_34137397/9665878&#xff0c; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o…

Asp.Net Core 发布和部署( MacOS + Linux + Nginx )

前言 在上篇文章中&#xff0c;主要介绍了 Dotnet Core Run 命令&#xff0c;这篇文章主要是讲解如何在Linux中&#xff0c;对 Asp.Net Core 的程序进行发布和部署。 有关如何在 Jexus 中进行部署&#xff0c;请参见本人的另一篇文章&#xff1a;http://www.cnblogs.com/savorb…

php渐变字,jQuery_jQuery实现的立体文字渐变效果,先截两个图看看: 效果很 - phpStudy...

jQuery实现的立体文字渐变效果先截两个图看看&#xff1a;效果很不错吧&#xff1f;会不会误以为这些字体是图片&#xff1f;这可不是图片&#xff0c;而是用JS实现的在线演示 http://demo.phpstudy.net/js/gradient-test/demo.htm下面来简单分享下实现过程及原理(网站中使用了…

https 单向认证和双向认证

转载自 https 单向认证和双向认证 一、Http HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff0c;是互联网上使用最广泛的一种协议&#xff0c;所有WWW文件必须遵循的标准。HTTP协议传输的数据都是未加密的&#xff0c;也就是明文的&#xff0c;因此使用HTT…

python中将整数转化为八进制的函数,Python进制转化

Python中的进制有二进制、八进制、十进制、十六进制&#xff0c;用python的内置函数可以方便的进行不同进制之间的转换&#xff0c;二、八、十六进制数字表示前面分别添加0b、0o、0x(前面为零)。二进制八进制十进制十六进制0b1010o1271230x1a转化为十进制int()可以接收一个或者…

Asp.Net Core 发布和部署(Linux + Jexus )

前言 在上篇文章中&#xff0c;主要介绍了 Dotnet Core Run 命令&#xff0c;这篇文章主要是讲解如何在 asp.net core 中对我们的已经完成的程序进行发布和部署。 有关如何使用 Nginx 进行部署&#xff0c;请参见本人的另一篇文章&#xff1a;http://www.cnblogs.com/savorboar…

购物车的功能——CSS源码

里面所用到的图片资源统一都在“我的资源”里面&#xff0c;相对应的图片是“ 购物车源码相关图片 ”http://download.csdn.net/detail/qq_34137397/9665878&#xff0c; 此CSS的对应的是“购物车的功能——界面源码”的内容 charset "gb2312"; /* CSS Document */…