MySql学习笔记(一):创建数据库,创建表,加载数据,数据检索
一、准备工作
1.1 安装mysql
一路next的操作这里就不做记录了。
1.2 配置mysql
- 安装完成后,将下面路径
C:\Program Files\MySQL\MySQL Server 5.7\bin
配置到环境变量中去。 - 控制台下,输入
>mysql -hlocalhost -uroot -p123456
,进入mysql。
二、创建并且使用databases
2.1 查看已有databases
show databases
命令和use tb_test
2.2 创建表
show tables
命令
create table
命令和describe
命令
2.3 向表中添加数据
load data local infile 'c:/pet.txt' into table pet
命令,加载txt文件中数据。
首先,先写一个pet.txt文件,里面的数据用tab隔开,
然后,对pet.txt中的数据进行加载,
insert into pet values()
命令
2.4 检索表中数据
2.4.1. select * from pet
命令,查询整个表 ![](/assets/blank.gif)
2.4.2. update pet set birth = '1989-08-31' where name = 'Bowser';
命令 如果检索到的数据有误,对表中数据进行更新
现在发现,Bowser这条小狗的出生日期登记有误,进行更新,
2.4.3. 检索满足特定要求的记录(一个记录也就是一行)。
1 .select * from pet where name = 'Bowser';
命令
2 SELECT * FROM pet WHERE birth >= '1989-09-01';
命令
注意!!! 这里的关键字都进行了大写!!!因为如果不大写关键字会产生错误,说是mysql语法错误!!!
因此,最好养成大写关键字的习惯。前面的截图效果,都是用小写来记录,就偷个懒不从头更改了。从这里开始,大写关键字。所以标红字体,在此做个记录!!!
3.SELECT * FROM pet WHERE species = 'dog' AND sex = 'f';
命令。
4. SELECT * FROM pet WHERE species = 'snake' OR species = 'bird';
命令
5. SELECT * FROM pet WHERE (species = 'cat' AND sex = 'm') OR (species = 'dog' AND sex = 'f');
命令
2.4.4. 按照列来检索
SELECT name,birth FROM pet;
和SELECT owner FROM pet;
。
SELECT DISTINCT owner FROM pet;
命令
SELECT name,species,birth FROM pet WHERE species = 'dog' OR species = 'cat';
命令
2.4.5. 对检索结果进行排序
SELECT name,birth FROM pet ORDER BY birth;
命令
2.
SELECT name,birth FROM pet ORDER BY birth DESC;
命令,降序排列
SELECT name,species,birth FROM pet ORDER BY species,birth DESC;
命令
2.4.6. 带日期计算的检索
SELECT name,birth,CURDATE(),TIMESTAMPDIFF(YEAR,birth,CURDATE()) AS age FROM pet ORDER BY name;
命令SELECT name,birth,death,TIMESTAMPDIFF(YEAR,birth,death) AS age FROM pet WHERE death IS NOT NULL ORDER BY age;
命令
MONTH()
命令
SELECT name,birth FROM pet WHERE MONTH(birth) = MONTH(DATE_ADD(CURDATE(),INTERVAL 1 MONTH));
命令
2.4.7. 模式匹配 ( Pattern Matching )
与Unix中的vi
,grep
,sed
命令类似,MySQL提供了模式匹配的检索方式。其中使用_
来匹配单一字符,使用%
来匹配任意数量的字符和空字符。最后值得一提的一点是,这里使用LIKE
和NOT LIKE
来作为比较运算符,而不是=
。
- 利用
%
匹配开头和结尾。
- 利用
%
匹配任意位置
- 利用
_
匹配包含5个字符的字符串
REGEXP
命令实现LIKE
命令的功能
2.4.8. 利用COUNT(*)
计算行数
SELECT COUNT(*) FROM pet;
命令
SELECT owner,COUNT(*) FROM pet GROUP BY owner;
命令
SELECT species, sex, COUNT(*) FROM pet GROUP BY species, sex;
命令
注意!!!使用COUNT(*)时,
如果还想要指定其它列,必须加GROUP BY
语句。否则会出错!!!
这里补充一些sql_mode的概念。
sql_mode
: 它定义了你的MYSQL应该支持的SQL语法和对数据的校验等等。
可以使用SELECT @@sql_mode;
命令查看你当前的sql_mode
。
2.4.9. 多表检索
再创建一个event
表,在event.txt中填入数据。
执行LOAD DATA LOCAL INFILE 'c:/event.txt' INTO TABLE event LINES TERMINATED BY '\r\n';
命令(这里是Windows系统),将event.txt中的数据加载到event
表中。
1.
mysql> SELECT pet.name,TIMESTAMPDIFF(YEAR,birth,date) AS age, remark-> FROM pet INNER JOIN event-> ON pet.name = event.name-> WHERE event.type = 'litter';
2.
mysql> SELECT p1.name,p1.sex,p2.name,p2.sex,p1.species-> FROM pet AS p1 INNER JOIN pet AS p2-> ON p1.species = p2.species-> AND p1.sex = 'f' AND p1.death IS NULL-> AND p2.sex = 'm' AND p2.death IS NULL;
MySql学习笔记(一):创建数据库,创建表,加载数据,数据检索相关推荐
- 深度实践SPARK机器学习_学习笔记_第二章2.3加载数据
2.3加载数据 1.下载数据文件u.user head -3 u.user ##查看文件前几行 cat u.user |wc -l 或者 more u.user |wc -l ##数文件记录数 ...
- MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记03【数据库表的CRUD操作、数据库表中记录的基本操作、客户端图形化界面工具SQLyog】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记01【数据库概念、MySQL安装与使用】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- CC00053.pbpositions——|HadoopPB级数仓.V11|——PB数仓.v11|核心交易分析|DIM层建表|加载数据|
一.DIM层建表加载数据:DIM层建表加载数据概述 ### --- 首先要确定哪些是事实表.哪些是维表.绿色的是事实表,灰色的维表~~~ 用什么方式处理维表,每日快照.拉链表? ~~~ 小表使用每日快 ...
- Hive学习笔记(五)向表中装载数据
1.向管理表中装载数据 再次强调,Hive没有行级别的数据插入.数据更新和删除操作. LOAD DATA LOCAL INPATH '${env:HOME}/california-employees' ...
- Unity学习笔记(5):动态加载Prefab
第一种方法,从Resources文件夹读取Prefab Assets/Resources文件夹是Unity中的一个特殊文件夹,在博主当前的认知里,放在这个文件夹里的Prefab可以被代码动态加载 直接 ...
- MySQL 学习笔记(1)— 创建/连接/选择/显示数据库(表) 查询单列(多列/所有列)/查询返回特定的行数 各种排序(单列/多列/降序/组合排序) 过滤数据
本文是对之前学习 MySQL 的一个总结,使用思维导图的方式将涉及到的知识点罗列出来,一方面作为自己对于知识点的归纳,另一方面也便于日后查询. 在该篇文章中将对 MySQL 的基本使用.检索基本数据. ...
- Mysql学习笔记2-提示符+创建(摘自慕课)
原本mysql的提示符是:mysql> 第一种方式(把mysql提示符从mysql>修改成本地服务器名称): 第二种方式(把mysql提示符从localhost修改成asd): 提示符可跟 ...
- mysql学习笔记01-创建数据库
创建数据库: 校验规则:是指表的排序规则和查询时候的规则 utf8_general_ci 支持中文, 且不区分大小写 utf8_bin 支持中文, 区分大小写 比如: create database ...
最新文章
- Leetcode12. 整数转罗马数字(C++)
- PyTorch模型读写、参数初始化、Finetune
- java 上传源码_和付费网盘说再见,跟着本文自己起个网盘(Java)
- linux系统文件的复制,linux操作系统文件复制操作
- 【Python】Matplotlib在概率密度曲线图的基础上绘制积分区域
- 机器学习week8 ex7 review
- 【原创】大叔问题定位分享(12)Spark保存文本类型文件(text、csv、json等)到hdfs时为什么是压缩格式的...
- oracle里查询表的语句,Oracle查询用户所有表的语句
- .net MVC Model
- 微信小程序电商实战-购物车(上)
- 【毕业设计】单片机智能快递柜系统 - stm32 嵌入式 物联网
- Sketch设置透明背景
- dw cs6 html建站点,dreamweaver cs6网页中制作锚点链接的教程方法
- 红山vTop虚拟化桌面实施分享(一)
- 超实用PCB布线技巧,菜鸟和老司机都应该知道!
- C3D复现出现的问题及其解决方法
- PTA甲级 1109 Group Photo (25point(s))
- 使用php-excel-reader读取excel文件
- Qt项目发布打包教程(win10)
- 华为瘦胖ap互转_H3c 胖AP瘦AP互转