MySQL中select查询的使用
来源:互联网 发布:星悦麻将 乐玩网络 编辑:程序博客网 时间:2024/05/14 17:49
除非最终检索它们并利用它们来做点事情,否则将记录放入数据库没什么好处。这就 是select语句的用途,即帮助取出数据。select大概是SQL语言中最常用的语句,而且怎样使用它也最为讲究;用它来选择记录可能相当复杂,可能会涉及许多表中列之间 的比较。本节介绍select语句关于查询的最基本功能。select语句的语法如下:
- select selection_list //选择哪些列
- from table_list //从何处选择行
- where primary_constraint //行必须满足什么条件
- group by grouping_columns // 怎样对结果分组
- having secondary_constraint //行必须满足的第二条件
- order by sorting_columns //怎样对结果排序
- limit count //结果限定
注意:所有使用的关键词必须精确地以上面的顺序给出。例如,一个having子句必 须跟在group by子句之后和order by子句之前
上述语法中除了select关键字之外,其他每样东西都是可选的。有些数据库需要用from关键字,但是MySQL允许对表达式求值而不引用任何表
select的基本使用
select最简单的形式是从一张表中检索每样东西
基本语法:
- select columns from tb_name;
columns是列名称,可以写成*号,表示查询所有列;也可以指定某个列。tb_name是你的目标数据库表。
看两个例子:
- select <em> from test01_01;//查询当前表里所有的列的数据
- select name,age from test01_01;//查询当前表里name列和age列的所有数据
- select (2+3</em>4.5)/2.5;//表达式求值而不引用任何表
条件查询
不必每次查询都返回所有的行记录,你能从你的表中只选择特定的行。你可以使用where或者having,这里我们只讲where语句,因为where能实现having绝大部分功能
基本语法:
- select columns from tb_name where expression..;
expression的表现形式很多,例如name='jack',age>=20,name='jack' or name ='tom'等等,都可以写在where表达式后面。
看一个例子:
- select * from test01_01 where name ="tom";//筛选出当前表中name的值是tom的所有数据。
查询排序
使用order by子句对查询返回的结果按一列或多列排序。order by子句的语法 格式为:
- order by column_name [asc|desc] [,…]
其中asc表示升序,为默认值,desc为降序。order by不能按text、text和image数据类型进行排序。另外,可以根据表达式进行排序
看下面实例:
- select * from test01_01 order by age asc;//按照年龄升序输出
注意desc/asc关键词仅适用于紧跟在它之前的列名字
分组和行计数
group by从句根据所给的列名返回分组的查询结果,可用于查询具有相同值的列
基本语法:
- group by col_name,….
单独使用group by没有任何意义,它的真正作用在于与各种组合函数配合,用于行计数
看下面实例:
- select name,count(*) from test01_01 group by name;//按name分组,并且统计数量
如果你除了计数还返回一个列的值,那么必须使用group by语句,否则无法计算记录,产生错误。
多表查询
查询多个表,from子句列出表名,并用逗号分隔,因为查询需要从他们两个拉出信息
基本语法:
- select t1.name,t2.name from tb_name1 as t1,tb_name2 as t2 where t1.name=t2.name;
上述代码表示,从t1和t2中取出两张表name相同的值。as表示为这个表取别名。
实例如下:
- select t1.name as t1name,t1.age as t1age,t2.name as t2name,t2.age as t2age
- from test01_01 as t1,test01_03 as t2 where t1.name=t2.name;
- MySQL中select查询的使用
- MySQL在字段中使用select子查询
- MySQL在字段中使用select子查询
- MySQL在字段中使用select子查询
- MySQL在字段中使用select子查询
- mysql select中子查询中使用强制索引的优化案例
- select(查询)的使用
- 详述MySQL中select的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- MySQL中INSERT INTO SELECT的使用
- Mysql中INSERT INTO SELECT的使用
- 几种常见的ROM,RAM初始化文件格式
- 2、Logistic Regression求解classification问题 c代码
- Redis 初学
- 简单工厂模式
- mac终端命令总结
- MySQL中select查询的使用
- html-label标签
- 子查询
- Backpropagation 算法公式推导及矩阵实现
- java nio学习:缓冲区、通道和选择器
- MySQL中EXPLAIN解释命
- 进程与线程的一个简单解释
- Android概念初识(持续整理)+面试问题整理
- sql 日期 增加2个月