mysql的一些常用命令1
mysql的一些常用命令
打开cmd命令窗口
开始
mysql - 用户名 -p (-h ip地址 -P端口号)
进入
show databases 展示当前mysql中所包含的数据库
create database 数据库名 创建数据库
use
数据库名; 进入数据库
create table 表名 ( 列名 数据类型()) 创建表
show tables 展示数据库中包含的表
show columns from 表名 展示对应的表结构
describe 表名 展示对应的表结构
查询
select 列名(,列名,列名…) form 表名 打开对应列
select * from 表名 检索表中全部的列
select distinct 列名 from 表名 只返回不同的值
select 列名 from 表名 limit 数字 表示返回不多于(数字)行
limit 数字,数字 第一个数为开始位置,第二个为要检索的行数
行0 检索出来的第一行为行0
limit 4 offset 3 从行3开始取4行
select 表名.列名 from 数据库名.表名 完全限定
排序检索
select 列名 from 表名 order by 列名 对列以字母排序
select 列名1, 列名2,(…) from 表名 order by 列名1,列名3(…)
对多个列首先按列1排序 相同则再按照列3排序
select id,price,name from 表名 order by price desc 按照price降序排列(大的在前)
select id,price,name from 表名 order by price desc, name 价格降序后再对名字排序
多个列降序排列需对每个列指定
使用order by 和limit 可以检索最高或者最低的值
过滤数据
例子
select name,price from products where price=30(逻辑表达式)
(where应该位于order by 之前)
select name,price from products where price between 5 and 10
(between and 两边是闭合 包含5和10在内的所有数)
空值查询
…where 列名 is null
数据过滤
and 和 or
放在where语句后逻辑表达
and操作符优先级更高,如果希望先执行or操作,可以使用圆括号
in操作符
select name,price from products where id in (11,12) order by name 检索id为11 12的列
not操作符
select name,price from products where id not in (11,12) order by name 检索除了id为 11,12的列
通配符过滤
% 通配符
如 where name like ‘jet%’ 检索全部以 jet开头的词
还可以 ‘%anvil%’ 表示搜索词中包含anvil的词
%可以代表 0 1 多个字符
_ 通配符
表示只匹配一个字符
通配符效率非常低 不要过度使用
正则表达式
正则表达式是用来匹配文本的特殊的串
基本字符匹配
select name from products where name regexp ‘100’ order by name
检索 name列中 列值里包含100的行 regexp 表示 其后跟着的是正则表达式
在表达式中 如 ‘.00’ . 表示匹配任意一个字符
like与regexp的区别
like 匹配的是列值整体,regexp匹配的是列值内的值
or 匹配
‘100|200’ 表示列值内含100或200
匹配几个字符之一
‘[ 123] ton’ 等价于 ‘[1|2|3] ton’ 意思是匹配 1 ton 或2 ton 或 3 ton
^ 否字符
’ [^123] ’ 表示匹配除这些字符以外的任何东西
- 匹配范围
‘[0-9]’ 表示0到9 ‘[a-z]’ 等
匹配特殊字符
在 ' ' 使用 \\ 作为前导 例如 '\\ .' 匹配一个点 '\\-' 表示匹配一个短横杠
匹配字符类
匹配多个实例
以上为匹配一个串中任意位置的文本
定位符
为匹配特定位置的文本需使用定位符
推荐阅读
-
MySQL查看索引的常用命令
-
关于MySQL自增ID的一些小问题总结
-
一个简单的PHP&MYSQL留言板源码第1/2页
-
提高MySQL 查询效率的三个技巧第1/2页
-
mysql设置更改root密码、mysql服务器的连接、mysql常用命令的图解
-
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause 的问题 MySQL
-
Mysql的常用命令
-
MySQL中的约束,添加约束,删除约束,以及一些其他修饰讲解
-
Linux查看系统日志的一些常用命令总结
-
解决大于5.7版本mysql的分组报错Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated