1、select1.1 作用获取mysql中的数据行1.2 单独使用select1.2.1 select @@XXX;获取参数信息select @@port; 查端口号show variables; 查看所有参数show variables like '%innodb%'; |查参数1.2.2 select 函数();select now(); 函数加括号mysql> select database(); |库mysql> select now(); |时间mysql> select version(); |版本1.3 sql92标准的使用语法1.3.1 select语法执行顺序select开始--> from 字句 --> where子句 -->group by 子句 --> select 后执行条件--> having子句 --> order by -->limit
desc city | 表结构 |
---|---|
id | 自增的无关列 |
name | 城市名字 |
countrycode | 所在国家代号 |
district | 中国省的意思 每个是洲的意思 |
populiation | 城市人口数量 |
select * from jyt; | 相对路径查询 生产中使用较少 |
---|---|
select * from root.jyt | 绝对路径 生产中使用较少 |
select name,populication from jyt; | 查看两列的内容 |
select name,populication from root.jyt; | 查看两列的内容 |
where | 相当于grep | 说明 |
---|---|---|
where配合等值查询 | select * from world.city where countrycode=‘chn‘; | 查询表中的中国城市信息 |
where配合不等值查询 | select * from world.city where Population<100; | 人口小于100人的城市 (>,<,<=,>=,<>) |
where配合模糊查询 | select * from world.city where CountryCode like ‘c%‘; | 国家以c开头 禁止%开头 |
where配合逻辑连接符(AND or) | select * from world.city where Population > 10000 AND Population < 20000; | select * from world.city where population between 10000 and 20000; |
select * from world.city where CountryCode=‘chn‘ OR CountryCode=‘usa‘; | select * from world.city where countrycode in (‘chn‘,‘usa‘); | |
SELECT * FROM world.city WHERE CountryCode=‘chn‘ UNION ALL SELECT*FROM world.city WHERE CountryCode=‘usa‘; | 推荐 union 去重 加all不去重 默认去重 |
函数 | 例子 |
---|---|
avg() | select district,avg(population) from city where countrycode=‘chn‘ group by district; |
count() | select countrycode,count(name) from city group by countrycode; |
sum() | select countrycode,sum(population) from city group by countrycode ; |
max() | - |
min() | - |
group_concat() | select countrycode,group_concat(district) from city group by countrycode; |
order by | 排序 |
---|---|
查询统计总数 | select district,sum(population) from city where countrycode=‘chn‘ group by district; |
查询统计总数并排序降序 | SELECT district,sum(population) FROM city WHERE countrycode=‘chn‘ GROUP BY district ORDER BY SUM(Population) DESC; |
查询中国所有的城市,并以人口数降序输出 | select*from city where countrycode=‘chn‘ order by population desc; |
- | - |
limit m,n 跳过m行显示n行 | limit x offset y 跳过y行显示x行 |
前5行 | SELECT*FROM city WHERE countrycode=‘chn‘ ORDER BY population DESC LIMIT 5; |
显示6-10行 | SELECT*FROM city WHERE countrycode=‘chn‘ ORDER BY population DESC LIMIT 5,5; |
显示6-10行 | select*from city where countrycode=‘chn‘ order by population desc limit 5 offset 5; |
mysql数据库 select语句全集
标签:自增 class 语法 variable union all variables mys ase select 函数
小编还为您整理了以下内容,可能对您也有帮助:
MYSQL语句语法
mysql基本语句是:
1、选择:“select * from table where”范围。
2、插入:“insert into table(field1,field2) values(value1,value2)”。
3、删除:“delete from table where ”范围。
4、更新:“update table set field1=value1 where ”范围。
5、查找:“select * from table where field1 like ’%value1%’”。
6、排序:“select * from table order by field1,field2 [desc]”。
7、总数:“select count as totalcount from table”。
8、求和:“select sum(field1) as sumvalue from table”。
9、平均:“select avg(field1) as avgvalue from table”。
10、最大:“select max(field1) as maxvalue from table”。
11、最小:“select min(field1) as minvalue from table”等。
MYSQL语句语法
mysql基本语句是:
1、选择:“select * from table where”范围。
2、插入:“insert into table(field1,field2) values(value1,value2)”。
3、删除:“delete from table where ”范围。
4、更新:“update table set field1=value1 where ”范围。
5、查找:“select * from table where field1 like ’%value1%’”。
6、排序:“select * from table order by field1,field2 [desc]”。
7、总数:“select count as totalcount from table”。
8、求和:“select sum(field1) as sumvalue from table”。
9、平均:“select avg(field1) as avgvalue from table”。
10、最大:“select max(field1) as maxvalue from table”。
11、最小:“select min(field1) as minvalue from table”等。
快速掌握MySQL数据库中SELECT语句[1]
本文针对 MySQL 数据库 中的SELECT语句快速精细掌握
MySQL中SELECT语句的基本语法是
Word WRAP: break word bgColor=#f f f > 以下是引用片段 SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [HIGH_PRIORITY] [DISTINCT|DISTINCTROW|ALL] select_list [INTO {OUTFILE|DUMPFILE} file_name export_options] [FROM table_references [WHERE where_definition] [GROUP BY col_name ] [HAVING where_definition] [ORDER BY {unsighed_integer|col_name|formura} [ASC|DESC] ] [LIMIT [offset ] rows] [PROCEDURE procere_name]]
从这个基本语法可以看出 最简单的SELECT语句是SELECT select_list 实际上利用这个最简单的SELECT语句 你也可以完成许多你期待的功能 首先你能利用它进行MySQL所支持的任何运算 例如 SELECT + 它将返回 ;其次 你也能利用它给变量赋值 而在 PHP 中 运用SELECT语句的这种功能 你就可以自由地运用MySQL的函数为PHP程序进行各种运算 并赋值给变量 在很多的时候 你会发现MySQL拥有许多比PHP更为功能强大的函数
STRAIGHT_JOIN SQL_SMALL_RESULT SQL_BIG_RESULT HIGH_PRIORITY是MySQL对ANSI SQL 的扩展 如果优化器以非最佳次序联结表 使用STRAIGHT_JOIN可以加快查询
SQL_SMALL_RESULT和SQL_BIG_RESULT是一组相对的关键词 它们必须与GROUP BY DISTINCT或DISTINCTROW一起使用 SQL_SMALL_RESULT告知优化器结果会很小 要求MySQL使用临时表存储最终的表而不是使用排序;反之 SQL_BIG_RESULT告知优化器结果会很小 要求MySQL使用排序而不是做临时表
HIGH_PRIORITY将赋予SELECT比一个更新表的语句更高的优先级 使之可以进行一次优先的快速的查询
以上四个关键词的使用方法的确比较晦涩 幸运的是 在绝大多数情况下 在MySQL中我们完全可以选择不使用这四个关键词
DISTINCT DISTINCTROW对查询返回的结果集提供了一个最基本但是很有用的过滤 那就是结果集中只含非重复行 在这里要注意的是 对关键词DISTINCT DISTINCTROW来说 空值都是相等的 无论有多少NULL值 只选择一个 而ALL的用法就有画蛇添足之嫌了 它对结果集的产生没有任何影响
INTO {OUTFILE|DUMPFILE} file_name export_options 将结果集写入一个文件 文件在服务器主机上被创建 并且不能是已经存在的 语句中的export_options部分的语法与用在LOAD DATAINFILE语句中的FIELDS和LINES子句中的相同 我们将在MySQL进阶_LOAD DATA篇中详细讨论它 而OUTFILE与DUMPFILE的关键字的区别是 后前只写一行到文件 并没有任何列或行结束
select list 其中可以包含一项或多项下列内容
* 表示按照create table的顺序排列的所有列
按照用户所需顺序排列的列名的清单
可以使用别名取代列名 形式如下 column name as column_heading
表达式(列名 常量 函数 或以算术或逐位运算符连接的列名 常量和函数的任何组合)
内部函数或集合函数
上述各项的任何一种组合
FROM 决定SELECT命令中使用哪些表 一般都要求有此项 除非select_list中不含列名(例如 只有常量 算术表达式等) 如果表项中有多个表 用逗号将之分开 在关键词FROM后面的表的顺序不影响结果
表名可以给出相关别名 以便使表达清晰 这里的语法是tbl_name [AS] alias_name 例如
select t name t salary from employee as t info as t where t name=t name与select t name t salary from employee t info t where t name=t name是完全等价的
所有对该表的其他引用 例如在where子句和having子句中 都要用别名 别名不能以数字开头
lishixin/Article/program/MySQL/201311/29616快速掌握MySQL数据库中SELECT语句[1]
本文针对 MySQL 数据库 中的SELECT语句快速精细掌握
MySQL中SELECT语句的基本语法是
Word WRAP: break word bgColor=#f f f > 以下是引用片段 SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [HIGH_PRIORITY] [DISTINCT|DISTINCTROW|ALL] select_list [INTO {OUTFILE|DUMPFILE} file_name export_options] [FROM table_references [WHERE where_definition] [GROUP BY col_name ] [HAVING where_definition] [ORDER BY {unsighed_integer|col_name|formura} [ASC|DESC] ] [LIMIT [offset ] rows] [PROCEDURE procere_name]]
从这个基本语法可以看出 最简单的SELECT语句是SELECT select_list 实际上利用这个最简单的SELECT语句 你也可以完成许多你期待的功能 首先你能利用它进行MySQL所支持的任何运算 例如 SELECT + 它将返回 ;其次 你也能利用它给变量赋值 而在 PHP 中 运用SELECT语句的这种功能 你就可以自由地运用MySQL的函数为PHP程序进行各种运算 并赋值给变量 在很多的时候 你会发现MySQL拥有许多比PHP更为功能强大的函数
STRAIGHT_JOIN SQL_SMALL_RESULT SQL_BIG_RESULT HIGH_PRIORITY是MySQL对ANSI SQL 的扩展 如果优化器以非最佳次序联结表 使用STRAIGHT_JOIN可以加快查询
SQL_SMALL_RESULT和SQL_BIG_RESULT是一组相对的关键词 它们必须与GROUP BY DISTINCT或DISTINCTROW一起使用 SQL_SMALL_RESULT告知优化器结果会很小 要求MySQL使用临时表存储最终的表而不是使用排序;反之 SQL_BIG_RESULT告知优化器结果会很小 要求MySQL使用排序而不是做临时表
HIGH_PRIORITY将赋予SELECT比一个更新表的语句更高的优先级 使之可以进行一次优先的快速的查询
以上四个关键词的使用方法的确比较晦涩 幸运的是 在绝大多数情况下 在MySQL中我们完全可以选择不使用这四个关键词
DISTINCT DISTINCTROW对查询返回的结果集提供了一个最基本但是很有用的过滤 那就是结果集中只含非重复行 在这里要注意的是 对关键词DISTINCT DISTINCTROW来说 空值都是相等的 无论有多少NULL值 只选择一个 而ALL的用法就有画蛇添足之嫌了 它对结果集的产生没有任何影响
INTO {OUTFILE|DUMPFILE} file_name export_options 将结果集写入一个文件 文件在服务器主机上被创建 并且不能是已经存在的 语句中的export_options部分的语法与用在LOAD DATAINFILE语句中的FIELDS和LINES子句中的相同 我们将在MySQL进阶_LOAD DATA篇中详细讨论它 而OUTFILE与DUMPFILE的关键字的区别是 后前只写一行到文件 并没有任何列或行结束
select list 其中可以包含一项或多项下列内容
* 表示按照create table的顺序排列的所有列
按照用户所需顺序排列的列名的清单
可以使用别名取代列名 形式如下 column name as column_heading
表达式(列名 常量 函数 或以算术或逐位运算符连接的列名 常量和函数的任何组合)
内部函数或集合函数
上述各项的任何一种组合
FROM 决定SELECT命令中使用哪些表 一般都要求有此项 除非select_list中不含列名(例如 只有常量 算术表达式等) 如果表项中有多个表 用逗号将之分开 在关键词FROM后面的表的顺序不影响结果
表名可以给出相关别名 以便使表达清晰 这里的语法是tbl_name [AS] alias_name 例如
select t name t salary from employee as t info as t where t name=t name与select t name t salary from employee t info t where t name=t name是完全等价的
所有对该表的其他引用 例如在where子句和having子句中 都要用别名 别名不能以数字开头
lishixin/Article/program/MySQL/201311/29616MySQL使用select语句查询指定表中指定列(字段)的数据
本文介绍MySQL数据库中执行select查询语句,查询指定列的数据,即指定字段的数据。
再来回顾一下SQL语句中的select语句的语法:
Select
语句的基本语法:
Select
<列的集合>
from
<表名>
where
<条件>
order
by
<排序字段和方式>
如果要查询某个表中的指定列的所有数据,则查询语句可以写作:
select
列名1,列名2,列名3...
from
<表名>
要说明一个,这个语句后面仍然可以使用where子句,用来选择指定行的指定列。这样可以更精准的查询出需要的结果来。
下面来看一个例子,查询test表中,t_name和t_birth两个字段的数据,并且匹配行t_name='name2':
mysql>
select
t_name,t_birth
from
test
where
t_name='name2';
+-------+------------+
|
t_name
|
t_birth
|
+-------+------------+
|
name2
|
2013-01-01
|
+-------+------------+
1
rows
in
set
(0.00
sec)
关于MySQL使用select语句查询指定表中指定列(字段)的数据,本文就介绍这么多,希望对大家有所帮助,谢谢!
MySQL使用select语句查询指定表中指定列(字段)的数据
本文介绍MySQL数据库中执行select查询语句,查询指定列的数据,即指定字段的数据。
再来回顾一下SQL语句中的select语句的语法:
Select
语句的基本语法:
Select
<列的集合>
from
<表名>
where
<条件>
order
by
<排序字段和方式>
如果要查询某个表中的指定列的所有数据,则查询语句可以写作:
select
列名1,列名2,列名3...
from
<表名>
要说明一个,这个语句后面仍然可以使用where子句,用来选择指定行的指定列。这样可以更精准的查询出需要的结果来。
下面来看一个例子,查询test表中,t_name和t_birth两个字段的数据,并且匹配行t_name='name2':
mysql>
select
t_name,t_birth
from
test
where
t_name='name2';
+-------+------------+
|
t_name
|
t_birth
|
+-------+------------+
|
name2
|
2013-01-01
|
+-------+------------+
1
rows
in
set
(0.00
sec)
关于MySQL使用select语句查询指定表中指定列(字段)的数据,本文就介绍这么多,希望对大家有所帮助,谢谢!
MYSQL的select语句
语法:select
字段名
from
表名
where
条件
如果你想要显示多个字段的话:
select
字段名,字段名,.....,字段名
from
表名
where
条件
你问的问题写法应该是:select
username
from
user
where
username='$username'
如何从MySQL数据库表中检索数据
在《用MySQL创建数据库和数据库表》文章中,我们如何创建一个数据库和数据库表,并知道如何向数据库表中添加记录。那么我们如何从数据库表中检索数据呢? 1、从数据库表中检索信息 实际上,前面我们已经用到了SELECT语句,它用来从数据库表中检索信息。 sele在《用MySQL创建数据库和数据库表》文章中,我们如何创建一个数据库和数据库表,并知道如何向数据库表中添加记录。 那么我们如何从数据库表中检索数据呢?
1、从数据库表中检索信息
实际上,前面我们已经用到了SELECT语句,它用来从数据库表中检索信息。
select语句格式一般为:
SELECT 检索关键词 FROM 被检索的表 WHERE 检索条件(可选)
以前所使用的“ * ”表示选择所有的列。下面继续使用我们在上篇文章中创建的表mytable。
2、查询所有数据:
mysql> select * from mytable;
+----------+------+------------+----------+
| name | sex | birth | birthaddr |
+----------+------+------------+--------+
| abccs |f | 1977-07-07 | china |
| mary |f | 1978-12-12 | usa |
| tom |m | 1970-09-02 | usa |
+----------+------+------------+----------+
3 row in set (0.00 sec)
3、修正错误记录:
假如tom的出生日期有错误,应该是1973-09-02,则可以用update语句来修正: mysql> update mytable set birth = "1973-09-02" where name = "tom"; 再用2中的语句看看是否已更正过来。
4、选择特定行
上面修改了tom的出生日期,我们可以选择tom这一行来看看是否已经有了变化:
mysql> select * from mytable where name = "tom";
+--------+------+------------+------------+
| name |sex | birth | birthaddr |
+--------+------+------------+------------+
| tom |m | 1973-09-02 | usa |
+--------+------+------------+------------+
1 row in set (0.06 sec)
上面WHERE的参数指定了检索条件。我们还可以用组合条件来进行查询:
mysql> SELECT * FROM mytable WHERE sex = "f" AND birthaddr = "china";
+--------+------+------------+------------+
| name |sex | birth | birthaddr |
+--------+------+------------+------------+
| abccs |f | 1977-07-07 | china |
+--------+------+------------+------------+
1 row in set (0.06 sec)
5、 选择特定列
假如你想查看表中的所有人的姓名,则可以这样操作:
mysql> SELECT name FROM mytable;
+----------+
| name |
+----------+
| abccs |
| mary |
| tom |
+----------+
3 row in set (0.00 sec)
如果想列出姓名和性别两列,则可以用逗号将关键词name和birth分开: myaql> select name,birth from mytable;
6、对行进行排序
我们可以对表中的记录按生日大小进行排序:
mysql> SELECT name, birth FROM mytable ORDER BY birth;
+----------+------------+
| name | birth |
+----------+------------+
| tom | 1973-09-02 |
| abccs | 1977-07-07 |
| mary | 1978-12-12 |
+----------+------------+
3 row in set (0.00 sec)
我们可以用DESC来进行逆序排序:
mysql> SELECT name, birth FROM mytable ORDER BY birth DESC;
+----------+------------+
| name | birth |
+----------+------------+
| mary | 1978-12-12 |
| abccs | 1977-07-07 |
| tom | 1973-09-02 |
+----------+------------+
3 row in set (0.00 sec)
7、 行计数
数据库经常要统计一些数据,如表中员工的数目,我们就要用到行计数函数COUNT()。COUNT()函数用于对非NULL结果的记录进行计数:
mysql> SELECT COUNT(*) FROM mytable;
+----------+
| COUNT(*) |
+----------+
| 3 |
+----------+
1 row in set (0.06 sec)
员工中男女数量:
mysql> SELECT sex, COUNT(*) FROM mytable GROUP BY sex;
+------+----------+
| sex | COUNT(*) |
+------+----------+
| f | 2 |
| m | 1 |
+------+----------+
2 row in set (0.00 sec)
注意我们使用了GROUP BY对SEX进行了分组。