mysql基础

1.检查是否启动mysql服务
ps -ef | grep mysqld
2.进入mysql的方式
方式一:root@host# mysql -u root -p
方式二:root@host# mysql

3.进入数据库
[root@host]# mysql

mysql> SHOW DATABASES;

±---------+

| Database |

±---------+

| mysql |

| test |

±---------+

在这里需要注意,命令的后面要接分号

4.创建数据库

CREATE DATABASE 数据库名;

5.删除数据库

drop database <数据库名>;

6.进入一个数据库

use 数据库名;

7.mysql中的数据类型

https://www.runoob.com/mysql/mysql-data-types.html

8.创建数据表

DROP TABLE IF EXISTS colum;

CREATE TABLE colum (

id int(20) NOT NULL AUTO_INCREMENT,

name varchar(255) CHARACTER SET utf8 DEFAULT NULL,

sort varchar(255) CHARACTER SET utf8 DEFAULT NULL,

pid int(20) DEFAULT NULL,

type varchar(255) CHARACTER SET utf8 DEFAULT NULL,

static varchar(255) CHARACTER SET utf8 DEFAULT NULL,

PRIMARY KEY (id)

) ENGINE=MyISAM AUTO_INCREMENT=51 DEFAULT CHARSET=latin1;

9.罗列出所有的数据表

show tables;

9.查询数据表字段

desc 表明;

或者

describe 表明;

10.删除数据表

DROP TABLE 数据表名;

11.插入数据

insert into colum(name,sort,pid,type,static) values(‘男频’,‘2’,‘32’,‘1’,‘1’);

12.查询数据

select * from 表名;

13.删除数据

delete from colum where id=51;

14.数据的更新

update colum set name=‘yanqing’, sort=‘6’ where id=49;

15.like查询

select * from colum where name like ‘%频%’;

16.order by 排序

select * from colum order by id desc;

17.group by 的使用

select type, count(*) from colum group by type;

select pid, count(*) from colum group by pid;

select name from user group by name;

统计WITH ROLLUP

mysql> select type, count(*) from colum group by type WITH ROLLUP;

±-----±---------+

| type | count(*) |

±-----±---------+

| 1 | 11 |

| 2 | 1 |

| NULL | 12 |

±-----±---------+

3 rows in set (0.00 sec)

18.多表查询

inner join

select u.name, u.pass, u.static as ‘状态’, z.name as ‘常住地’ from user as u inner join zuozhe z on u.id=z.uid;

where

select u.name, u.pass, u.static as ‘状态’, z.name as ‘常住地’ from user as u inner join zuozhe z where u.id=z.uid;

select u.name, u.pass, u.static as ‘状态’, z.name as ‘常住地’ from user as u , zuozhe z where u.id=z.uid;

MySQL LEFT JOIN 会读取左边数据表的全部数据,即便右边表无对应数据。

select u.name, u.pass, u.static as ‘状态’, z.name as ‘常住地’ from user as u left join zuozhe z on u.id=z.uid;

RIGHT JOIN 会读取右边数据表的全部数据,即便左边边表无对应数据。

select u.name, u.pass, u.static as ‘状态’, z.name as ‘常住地’ from user as u right join zuozhe z on u.id=z.uid;

19.我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。

为了处理这种情况,MySQL提供了三大运算符:

IS NULL: 当列的值是 NULL,此运算符返回 true。

IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。

<=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 NULL 时返回 true。

关于 NULL 的条件比较运算是比较特殊的。你不能使用 = NULL 或 != NULL 在列中查找 NULL 值 。

在 MySQL 中,NULL 值与任何其它值的比较(即使是 NULL)永远返回 NULL,即 NULL = NULL 返回 NULL 。

MySQL 中处理 NULL 使用 IS NULL 和 IS NOT NULL 运算符。

20.正则表达式

^匹配输入字符串的开始位置。

select * from user where name regexp ‘^江’;

$匹配输入字符串的结束位置。

select * from user where name regexp ‘南$’;

p1|p2|p3匹配 p1 或 p2 或 p3

select * from user where name regexp ‘南$|^小’;

查找name字段中包含’小’字符串的所有数据:

select * from user where name regexp ‘小’;

匹配所包含的任意一个字符

select * from user where name regexp ‘[小大]’;

21.事务

https://www.runoob.com/mysql/mysql-transaction.html

22.alter命令

给数据表添加一个字段(字段会自动添加到数据表字段的末尾)

alter table user add age int;

如果你需要指定新增字段的位置,可以使用MySQL提供的关键字 FIRST (设定位第一列), AFTER 字段名(设定位于某个字段之后)。

把字段age添加到字段的最前面个

alter table user add age int first;

把age字段添加到name字段的后面

alter table user add age int first name;

删除数据表的一个字段

alter table user drop age;

修改字段类型及名称

修改字段的类型

alter table user modify age int(12);

修改字段的名称

使用 CHANGE 子句, 语法有很大的不同。 在 CHANGE 关键字之后,紧跟着的是你要修改的字段名,然后指定新字段名及类型。

alter table user change a age varchar(100);

alter table user change a age int;

ALTER TABLE 对 Null 值和默认值的影响

以下实例,指定字段 j 为 NOT NULL 且默认值为100 。

修改字段默认值

alter table user alter a set default 10;

删除字段的默认值

alter table user alter a drop default;

修改表名

尝试以下实例将数据表 testalter_tbl 重命名为 alter_tbl:

ALTER TABLE testalter_tbl RENAME TO alter_tbl;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原克技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值