mysql数据库的使用及查询语句
来源:互联网 发布:小孩刘心悠原帖知乎 编辑:程序博客网 时间:2024/05/21 13:22
使用数据库
连接
连接数据库时,如果仅仅输入mysql,可能会出现错误信息,因为可能需要安全证书,或者是因为MYSQL没有运行到本地或者默认端口上。mysql接受你可以使用的一组命令行参数。
mysql -u 数据库账户 -p 密码
连接成功之后会出现以下欢迎信息
Welcome to the MySQL monitor......mysql>
PS:
命令输入在mysql>之后;
命令用;或者\g结束,换句话说,仅按Enter不执行命令;
输入help或者\h获取帮助,也可以输入更多的文本获得特定命令的帮助(如,输入help select获得使用select语句的帮助)
输入quit或exit退出命令行实用程序
选择数据库
最初链接到MYSQL时,没有打开任何数据库,需要选择一个数据库,可以使用USE关键字(key word)
例如,为了使用crashcourse数据库,应该输入一下内容:
USE crashcourse;
成功之后会返回
Database changed
PS:USE语句并不返回任何结果,依赖于使用的客户机,显示某种形式的通知。例如这里显示的Database changed消息是mysql命令行实用程序在数据库选择成功后显示的。
- MYSQL数据库使用show命令来显示数据库的名字
SHOW DATABASES;+-------------+| Database ++-------------+| 数据库一 || 数据库二 || 数据库三 |+-------------+
- 使用SHOW TABLES;命令可以获取数据库内的表的列表,如下图所示
SHOW TABLES;+-----------------------+| Tables_in_数据库名 ++-----------------------+| 表一 || 表二 || 表三 |+-----------------------+
- 当然,SHOW命令也可以用来显示表列
SHOW COLUMNS FROM customers;+---------------+-----------+--------+| Field | Type | ... |+---------------+-----------+--------+| cust_id |int(11) | ... | | cust_name |char(50) | ... || cust_address |char(50) | ... || ... |... | ... |+---------------+-----------+--------+
SHOW COLUMNS要求给出一个表名,(这个例子中的FORM customers),他对每个字段返回一行,行中包含字段名、数据类型、是否允许NULL、键信息…
- SHOW STATUS 用于显示广泛的服务器状态信息
- SHOW CREATE DATBASE和SHOW CREATE TABLE,分别用来显示创建特定数据库或者表的mysql语句
- SHOW GRANTS,用来显示授予用户的安全权限
- SHOW ERRORS和SHOW WARNINGS用来显示服务器错误或警告消息
检索数据
SELECT语句 检索单个列
SELECT name FROM student;
上述语句利用SELECT语句从student表中检索一个名为name的列。
+------------+| name |+------------+| 张一 || 张二 || 张三 |+------------+
结束SQL语句: 多条SQL语句必须以;分隔。单条SQL语句后面可以不加;但是加上分号肯定没有坏处。如果你使用mysql命令行,必须加上;来结束SQL语句。
SQL语句和大小写:,SQL语句不区分大小写,但是习惯上对于所有SQL关键字使用大写,而对于所有列和表名使用小写,这样做使代码更易于阅读和调试。
检索多列
检索多列同样使用SELECT语句,不同的是在SELECT关键字后给出多个列,列名之间必须以逗号分隔(当选择多个列时,一定要在列名之间加上逗号,最后一个列名后不加,如果最后一个列名后加了逗号,将出现错误)
SELECT id, name, age FROM student;
上述例子,表明从student表中检索学号,姓名,年龄
检索所有列
除了指定所需的列外,SELECT语句还可以检索所有的列而不必逐个列出他们。我们可以通过在实际列名的位置使用星号(*)通配符来达到。
SELECT * FROM student;
检索不同的行
SELECT 语句返回所有匹配的行。但是有时我们不想每个值每次都出现,对于重复的值只出现一次就好。
解决办法是使用DISTINCT(明显的、清楚的、有区别的)关键字
SELECT DISTINCT id FROM student;
使用上述命令,是只返回不同(唯一)的id,如果使用该关键字,他必须直接放在列名的前面。
限制结果
使用LIMIT子句,可以指定表中的每个行
SELECT name FROM studentLIMIT 5;
上述语句使用SELECT语句检索单个列,LIMIT 5只是mysql返回不多于5行
SELECT name FROM studentLIMIT 5, 5;
LIMIT 5,5 指示mysql返回从第5行开始返回5行,第一个数是开始位置,第二个为要检索的行数。行数不够时,mysql将只返回他能返回的那么多行。
排序检索数据
单纯的使用SELECT 子句检索数据,输出并没有特定的顺序。 而有时我们需要返回有序的的数据。这时我们可以使用 ORDER BY语句来实现。
SELECT id FROM studentORDER BY id;
这条语句表明按id顺序返回学生的学号信息
按多个列排序
经常需要不止一个列进行数据排序。例如要显示雇员清单,可能希望按姓和名排序(先按照姓排序,在按照名字排序)
为了按多个列排序,只要指定列名,列名之间用逗号分开即可
SELECT id, name, ageFROM studentORDER BY id, name;
上述语句将先按照学生id排序,当id相同时按照name排序。
指定排序方向
ORDER BY 默认按照升序排序(关键字ASC),我们可以通过使用关键字DESC来实现降序排列
DESC关键字,只要应用到直接位于其前面的列名
SELECT id, name, ageFROM studentORDER BY id DESC, name;
上述语句将只对id降序排列,name列任然按照升序排列
- mysql数据库的使用及查询语句
- 数据库查询的例子及SQL语句
- mysql的语句分类,查询、子查询及连接查询
- MYSQL数据库指令及各种查询语句合集
- mysql数据库容量及表大小查询语句
- mysql数据库常用的查询语句(单表查询)
- mysql数据库常用的查询语句(多表查询)
- 数据库中查询语句的使用(sql)
- 使用SQL语句导出MYSQL数据库及基本表的创建SQL语句
- oracle数据库查询Sql语句是否使用索引及常见的索引失效的情况
- MySQL数据库查询语句注意事项
- mysql数据库常用查询语句
- MySQL数据库查询常用语句
- Mysql数据库中PreparedStatement 在使用sql语句无法查询中文的问题
- Mysql查询语句使用select.. for update导致的数据库死锁分析
- 使用SQL语句查询数据库信息及表结构
- mysql的查询及连接JDBC数据库
- MySQL查询语句及函数
- 17江苏省物理及创新实验作品大赛回顾
- 【Scikit-Learn 中文文档】使用 scikit-learn 介绍机器学习 | ApacheCN
- java的关键字和保留字
- Foul Play UVA
- EEPROM_IIC
- mysql数据库的使用及查询语句
- 自话遗传算法(带实例)
- BZOJ1503: [NOI2004]郁闷的出纳员(洛谷P1486)
- 在Visual Sutdio 2017中使用boost库
- 【学习C++】C++项目的头文件和实现文件分别写什么
- nyoj 99 单词拼接(欧拉图)
- Recycler点击事件_接口回调
- python3学习-logging模块
- 二分法查找(C)