MySQL的基本知识 -- 命令
1.数据库和表
SHOW DATABASES;
返回可用数据库的一个列表
SHOW TABLES;
返回一个数据库内的表的列表
SHOW COLUMNS FROM tableName;
返回数据表的表结构
2.查询数据
SELECT * FROM tableName;
返回数据表中所有的数据
SELECT columnName FROM tableName;
返回字段名为columnName的数据记录的列表
SELECT columnName1, columnName2 FROM tableName;
返回多个字段值的列表
SELECT DISTINCT columnName FROM tableName;
返回字段值不同的记录,去掉重复的记录。DISTINCT应用于所有的列而不仅仅是前置它的列。
SELECT * FROM tableName LIMIT num;
返回数据表的前num行。
SELECT * FROM tableName LIMIT num1, num2;
返回数据表的num1+1~num1+1+num2行,即返回从num1+1开始(包括自己)的接下来num2行。
SELECT * FROM tableName LIMIT NUM, -1;
返回数据表的第num+1行直到最后一行。
3.数据排序
SELECT * FROM tableName ORDER BY columnName;
依据列columnName进行升序排序
SELECT * FROM tableName ORDER BY columnName DESC;
进行(DESC)降序排列,(ASC)升序排列。
SELECT * FROM tableNAme ORDER BY columnName1, columnName2;
按照多个列排序,先依据列columnName1进行排序,然后按照columnName2排序。
SELECT * FROM tableName ORDER BY columnName1 DESC, columnName2 ASC;
多个列不同的排序方式,先按照columnName1的DESC排序,在按照columnName2的ASC排序。
4.过滤数据
SELECT * FROM tableName WHERE columnname >= value;
或
SELECT * FROM tableName WHERE columnName BETWEEN value1 AND value2;
根据WHERE子句的条件查找符合要求的数据记录。如果value为字符串类型,需要使用单引号将value包括起来('value')。
SELECT * FROM tableName WHERE coulmnName = value ORDER BY cloumnName2;
在同时使用ORDER BY和WHERE时,应该让WHERE位于ORDER BY之前。
WHERE子句的操作符:
| 操作符 | 说明 |
|---|---|
| = | 等于 |
| <> | 不等于 |
| != | 不等于 |
| < | 小于 |
| <= | 小于等于 |
| > | 大于 |
| >= | 大于等于 |
| BETWEEN | 在指定的两个值之间 |
SELECT * FROM tableName WHERE columnName IS NULL;
返回空字段值的列表。
SELECT * FROM tableName WHERE columnName1 = value1 AND columnName2 = Value2;
返回满足所有条件的列表
SELECT * FROM tableName WHERE columnName1 = value1 OR columnName2 = value2;
返回满足任一条件的列表
SELECT * FROM tableName WHERE columnName1 = value1 OR columnName2 = value2 AND columnName3 >= value3;
由于在SQL语句中AND操作符的优先级比OR更高,所以该语句就被翻译为
返回字段columnName2等于value2并且columnName3大于等于value3或是columnName1等于value1并且columnName3大于等于value3的列表
SELECT * FROM tableName WHERE (columnName1 = value1 OR columnName2 = value2) AND columnName3 >= value3;
使用括号明确划分分组操作符
SELECT * FROM tableName WHERE columnName IN (value1, value2, value3);
返回columnName的值为(value1, value2, value3)中的一个的列表
5.模糊查询
模糊查询使用LIKE操作符同时使用通配符进行查询匹配
SELECT * FROM tableName WHERE cloumnName LIKE 'value%';
匹配符为%,%表示任何字符出现任意次,并且可以位于任意位置进行匹配。该语句匹配所有以value开头的字符串。
- 注意:
- 根据MySQL的配置方式,当MySQL区分大小写时
'value%'将不匹配VALUES。
SELECT * FROM tableName WHERE cloumnName LIKE 'value_';
匹配符_,_表示只匹配单个字符,不能多不能少。
- 注意:
- 1.使用匹配符会大大降低搜索性能,能不用最好不用。
- 2.匹配符位于模式开始处性能最低,能不放开始就不放在开始。
6.使用正则表达式进行过滤
SELECT * FROM tableName WHERE columnName REGEXP '.000';
语句REGEXP后跟着正则表达式,MySQL将对数据表正则匹配,但会匹配的列表。
- 注意:
- 1.
LIKE和REGEXP之间有一个重要的区别:- 在不使用通配符
%、_时,LIKE不返回结果REGEXP返回所有匹配的结果- 2.正则匹配不区分大小写。如果需要区分大小写,可以使用
BINARY关键字,如
SELECT * FROM tableName WHERE columnName REGEXP BINARY '.000';
- 注意:
- 为了匹配特殊字符,必须使用
\\为前导。\\.表示查找..- MySQL使用两个反斜杠,MySQL自己解释一个,正则表达式库解释另一个。
MySQL的基本知识 -- 命令的更多相关文章
- mysql 索引相关知识
由where 1 =1 引发的思考 最近工作上被说了 说代码中不能用 where 1=1,当时觉得是应该可以用的,但是找不到什么理据, 而且mysql 语句优化这方面确实很薄弱 感觉自己mysql ...
- mysql数据库相关知识
什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库.(来自:百度) 什么是sql? 结构化查询语言(Struct ...
- MYSQL 数据库导入导出命令
MySQL命令行导出数据库 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Serve ...
- mysql 登录及常用命令
一.mysql服务的启动和停止 mysql> net stop mysql mysql> net start mysql 二.登陆mysql mysql> 语法如下: mysql - ...
- mysql一些写常用命令
参见pcttcnc2007博客腾飞 1.mysql的status信息命令: mysql> show global status; 2.可以列出mysql服务器运行各种状态值,另外,查询mysql ...
- mysql中的load命令使用方法
使用mysql 中的load 命令,可以将txt 文件中的内容加载到数据库表中 使用mysql 中的load 命令,讲txt 文件中的内容加载到数据库表中,例如,创建table,名称是user,一个字 ...
- mysql查看表结构命令
mysql查看表结构命令 mysql查看表结构命令,如下: desc 表名;show columns from 表名;describe 表名;show create table 表名; use inf ...
- 查看MySQL数据库表的命令介绍
如果需要查看MySQL数据库中都有哪些MySQL数据库表,应该如何实现呢?下面就为您介绍查看MySQL数据库表的命令,供您参考. 进入MySQL Command line client下查看当前使用的 ...
- MySQL中EXPLAIN解释命令详解
MySQL中的explain命令显示了mysql如何使用索引来处理select语句以及连接表.explain显示的信息可以帮助选择更好的索引和写出更优化的查询语句. 1.EXPLAIN的使用方法:在s ...
随机推荐
- python之消息队列
引言 你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用.通讯的问题而苦恼.挣扎?如果是,那么恭喜你,消息服务让你可以很轻松地解决这些问题.消息服务擅 ...
- DrawSVG - SVG 路径动画 jQuery 插件
jQuery DrawSVG 使用了 jQuery 内置的动画引擎实现 SVG 路径动画,用到了 stroke-dasharray 和 stroke-dashoffset 属性.DrawSVG 是完全 ...
- React入门最好的学习实例-TodoList
前言 React 的核心思想是:封装组件,各个组件维护自己的状态和 UI,当状态变更,自动重新渲染整个组件. 最近前端界闹的沸沸扬扬的技术当属react了,加上项目需要等等原因,自己也决定花些时间来好 ...
- iOS APP上架过程常见问题
1.生产证书失效 2.上图中的蓝色选中部分的Provising Profile文件页需要导入,(调试证书(Developer).发布证书(distribution).还有Provising Profi ...
- iOS面试题总结 (三)
22 键值编码KVC KVC全称key valued coding 键值编码 提到KVC,就不能不提反射机制,反射机制就是在运行状态中,对于任意一个类,都能够调用他的所有属性和方法,对于任意一个对象, ...
- iOS Swift-控制流(The Swift Programming Language)
iOS Swift-控制流(The Swift Programming Language) for-in 在Swift中for循环我们可以省略传统oc笨拙的条件和循环变量的括号,但是语句体的大括号使我 ...
- 活用UML-软件设计高手(深圳 2014年4月26-27日)
我们将在深圳为您奉献高级技术课程”活用UML-软件设计高手“,首席专家张老师将会为您分享软件架构设计.数据库设计.用户体验设计及详细设计的最佳实践,帮助您成为优秀的软件设计师! 时间:2014.0 ...
- SQL*Plus环境变量设置浅析
SQL*Plus的使用环境是可以通过login.sql 或 glogin.sql脚本来设置的,可能很多初学者或不习惯使用SQL*Plus的老鸟都不知道.因为在如今UI工具(Toad.PL/SQL De ...
- Symantec Backup Exec Remote Agent 2010在Redhat Enterprise 6.6上启动问题
在Red Hat Enterprise Linux Server release 6.6 (Santiago)上安装了Symantec Backup Exec Remote Agent 2010后,启 ...
- SQL闲杂知识点汇总【2015年12月】
2015.12.14 知识点1:DEFAULT VALUES实现插入行 --临时创建临时表 CREATE TABLE [dbo].[tblTmp] ( iTmpID ,) NOT NULL PRIMA ...