此文是我从网上学习MySQL做的亲手笔记,希望能给大家提供帮助,仅供参考!

一、安装MySQL

1、源代码安装

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum update yum install mysql-server

2、权限设置:

chown mysql:mysql -R /var/lib/mysql

3、初始化 MySQL:

mysqld ----user=mysql --initialize

4、启动 MySQL:

systemctl start mysqld

二、修改mysql密码

1、yum install mysql mysql-admin

2、创建mysql密码

mysqladmin -uroot password cityhosue

3、修改mysql密码

mysqladmin -uroot -pcityhouse password cityhouse1

4、进入命令行修改

SET PASSWORD FOR '用户名'@'主机' = PASSWORD(‘密码');

set password for root@localhost = password('cityre');

三、数据库操作学习

1、创建数据库

create database cityhouse;

drop database cityhouse;

2、导出数据库

mysqldump -uroot -pcityre --events mysql > 2.sql

3、导入数据库

mysql -uroot -pcityre mysql < 2.sql

4、进入数据库

use mysql;

5、查看数据表

show tables;

6、创建数据表

create table (表名)(列名 列数据类型,列名 列数据类型,····················);

create table city(xin int,qing date,dao text);

7、查看建表数据

show create table city;

8、插入数据

insert into city (xin,qing,dao) values (2018,'2018-04-21',"xinkaishi");

注意:如果数据是字符型,必须使用单引号或者双引号,如:"value"。

9、插入某一列一个数据

insert into city (qing) values ('2021-09-30');

10、插入表列

alter table (表名) add (列名) (数据类型);

alter table city add xi text;

11、更改第4列第1行的数据

update city set xi="cityhouse" where xin=2018;

12、删除表数据

delete from city where xin=2018;

13、利用order进行排序

select * from city order by xin;

14、统计排序的个数

select *, count(*) from city order by xin;

15、使用 GROUP BY 语句 将数据表按名字进行分组,

select * from city group by qing;

16、并统计每个人有多少条记录:

select *, count(*) from city group by qing;

17、查看表help_category的表数据

select * from help_category;

18、查看表help_category表help_category_id和表name两列数据

select help_category_id,name from help_category;

19、查看表parent_category_id数据是4的数据信息,大于0小于8

select parent_category_id from help_category where parent_category_id > 0 and

parent_category_id < 8;
select * from help_category where parent_category_id < 8 and parent_category_id > 0;

20、查看表parent_category数据不为4和21的数据信息 

select * from help_category where parent_category_id != 4 and parent_category_id != 21;

21、查看表parent_category数据不为4和21,name为MBR的数据信息,字符串需要加引号

select * from help_category where parent_category_id != 4 and parent_category_id != 21 and name = “MBR”;

22、筛选表partent_category表中带Data的字符串

select * from help_catagory where name like '%Data%';

23、筛选表partent_category表中 不带 Data的字符串

select * from help_catagory where name not like '%Data%';

24、查看不在一个连续范围内的数据信息

select * from help_category where parent_category_id in (8,21);

25、查看在一个连续范围内的数据信息

select * from help_category where parent_category_id between 8 and 21;

26、查看表数值最大值和最小值

select max(parent_category_id) from help_category;
select min(parent_category_id) from help_category;

27、计算表的数值总和

select sum(parent_category_id) from help_category;

28、计算表的数值平均值

select avg(parent_category_id) from help_category;

29、MySQL 事务

begin·····commit,防止意外保存错误的数据

30、查看mysql表的详细参数

show columns from city;

31、更改mysql表数据类型

alter table 表明 change 列明 列明 数据类型;

alter table city change xin xin int(100);

32、清空mysql表中某一列中的数据

update 表明 set 列明=''(两个单引号);

update city set xi='';

33、删除mysql表中某列

alter table 表明 drop column 列明;

alter table city drop xi;

34、删除mysql表中某一行

delete from 表明 where  列明=字段;

 delete from city where qing='2021-09-30';

35、mysql对通过文件导入导出作了限制,默认不允许​

 查看配置,执行mysql命令

show variables like "secure_file_priv"​

导出表数据

select * from city into outfile '/var/lib/mysql-files/city.txt';

 

导入数据表

load data local infile '/var/lib/mysql-files/city.txt' into table city;

3、 mysql>describe user; 显示表mysql数据库中user表的列信息);

四、分享在牛网做的习题

示例一

1、题目:现在你需要查看2个用户明细设备ID数据,并将列名改为 'user_infors_example',,请你从用户信息表取出相应结果。

select device_id as user_infos_example from user_profile limit 0,2

2、题目:现在运营想要筛选出所有北京大学的学生进行用户调研,请你从用户信息表中取出满足条件的数据,结果返回设备id和学校。

select device_id,university from user_profile where university='北京大学'

3、题目:现在运营想要针对20岁及以上且23岁及以下的用户开展分析,请你取出满足条件的用户明细数据。

select device_id,gender,age from user_profile where age>=20 and age<=23

4、题目:现在运营想要查看除复旦大学以外的所有用户明细,请你取出相应数据

select device_id,gender,age,university from user_profile where university!='复旦大学' 
select device_id,gender,age,university from user_profile where university not in ('复旦大学')

5、题目:现在运营想要对用户的年龄分布开展分析,在分析时想要剔除没有获取到年龄的用户,请你取出所有年龄值不为空的用户明细数据。

select device_id,gender,age,university from user_profile where age is not null
select device_id,gender,age,university from user_profile where age!=''

示例二

6、题目:现在运营想要找到男性且GPA在3.5以上的用户进行调研,请你取出相关数据。

select device_id,gender,age,university,gpa from user_profile where gender='male' and gpa>3.5

7、题目:现在运营想要找到gpa在3.5以上的山东大学用户 或 gpa在3.8以上的复旦大学同学进行用户调研,请你取出相应数据

select device_id,gender,age,university,gpa from user_profile

where (university='山东大学' and gpa>3.5) or (university='复旦大学' and gpa>3.8)

8、题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据。

select device_id,age,university from user_profile where university like '北京%'

9、题目:现在运营想要看一下男性用户有多少人以及他们的平均gpa是多少,用以辅助设计相关活动,请你取出相应数据。

select count(gender) as male_num,round(avg(gpa), 1) as avg_gpa from user_profile where gender='male'

示例三

10、题目:现在运营想查看每个学校用户的平均发贴和回帖情况,寻找低活跃度学校进行重点运营,请取出平均发贴数低于5的学校或平均回帖数小于20的学校。

select university,avg(question_cnt) as avg_question_cnt,avg(answer_cnt) as avg_answer_cnt from user_profile group by university having avg_question_cnt<5 or avg_answer_cnt<20

GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:3 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐