MySQL学习笔记

一、数据库介绍

数据库(Database)-----数据集合

1、大量数据、计算机加工、进行高效访问

2、多个数据库:生产库、历史库、镜像库(根据时间节点储存,例如双十一销售额数据,以便比较各年销售业绩)

3、关系型数据库---将所有数据拆分成一个一个表,然后不同数据放在不同表中

原则:一类数据一个表(商品信息表、供应商信息表等)、表之间相互联系(并不一定两两关联,但一定能通过第三张表关联找到信息)

4、二维表结构

(1)访问方式:<表名>.<列名>

(2)列拥有严格的数据类型

5、简单命令:

(1)展示所有数据库 -SHOW DATABASES;

(2)新建数据库-CREATE DATABASES;

(3)使用某个数据库-USE DATABASES;

(4)重复历史快捷键

6、Excel表导入Navicat的一些注意事项:

Excel文件里面的具体数据是没有格式的(加粗之类),不能有网格线。

二、标准SQL语法

1、语句结构

关键字,又叫保留字,不能作为表名、列名,含义或使用方法事先定义好的单词(例如Window中的Ctrl+C),大写

操作对象:数据库表

例如:SELECT ...FROM...

关键字+操作对象;

语句类型:

DDL(数据定义语言)---创建、删除数据库和表对象,对表中数据没影响

CREATE   创建数据库和表对象

DROP  删除数据库和表对象

ALTER  修改数据库和表对象结构

DML(数据操纵语言)---查询、变更表中记录(操作表中数据)

SELECT  查询表中数据(查)

INSERT  向表中插入新数据(增)

UPDATE  更新表中数据(改)

DELETE  删除表中数据(删)

DCL(数据控制语言)---确认、取消对数据库的更改

COMMIT  将SQL语句的执行结果写入数据库表中

ROLLBACK  撤销SQL语句的执行结果

三、单表查询(从一个数据表中,查询出一列或者多列数据)

1、单列查询:SELECT 列名(必需字句1) FROM 表名(必需字句2);

     多列查询:SELECT 列名1 ,列名2,列名3  FROM 表名 ;

     所有列查询:SELECT * FROM 表名 ;

2、对结果展示的操作(AS)----对库中数据没影响

(1)为指定查询的列设置别名

SELECT 列名1 ,列名2 AS 别名,列名3  FROM 表名 ;

SELECT M.列名1 ,M.列名2,M.列名3  FROM 表名 AS M ;

(2)常数添加(在运行结果表中添加常数列)

SELECT  '常数' AS '别名'  FROM  表名 ; (常数作为值,如果不用AS添加别名的话该列会默认以该值命名)

(3)四则运算(列与列之间、列与常数之间)

例如:SELECT  列1*0.9  AS '折后价'  FROM  表名 ;

3、对结果展示的操作 2

(1)CONCAT  字符拼接(多个字段拼接为一个字段)----拼接后的字段作为新的一列显示在结果表中(纯字段拼接,字段和文本拼接)

适合场景:组合多列信息为一列、对列信息的补充

SELECT   CONCAT(列名1,列名2,...)  FROM ;

e.g.
SELECT m.*,CONCAT(m.prod_id,m.prod_name,'是',m.net_w,'单价是', m.sale_price,'元') AS '产品信息' FROM milk_tea AS m;

SELECT m.*,CONCAT(m.prod_id,m.prod_name,'(',m.net_w,')') AS '产品信息' FROM milk_tea AS m;

(2)CONCAT_WS 指定拼接符

统一拼接符:SELECT CONCAT_WS('拼接符' ,列名1,列名2,...)  FROM 表名 ;

使用场景:

多字段拼接、字段间使用同样的拼接符即拼接时补充的字段是相同的

e.g.

SELECT m.*,CONCAT_WS('是',m.prod_id,m.prod_name,m.net_w, m.sale_price,'元') AS '产品信息' FROM milk_tea AS m;

注:指定拼接符会自动跳过NULL继续拼接;而CONCAT  字符拼接中有列的值为NULL则该条结果为NULL。

SELECT 15*51;-----SQL可以充当计算器,但这并不是严格的SQL语句。

(3)去重函数  DISTINCT(单词中文:不同的,区别的)

适合场景:列有多个相同值,查看值的种类(取出不重复的列值)

SELECT   DISTINCT  列名  FROM 表名;

e.g.

SELECT DISTINCT m.valid_month FROM milk_tea AS m ;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值