mysql学习第二天

第一部分:导入示例数据库
第一步:打开数据库
D:\software\mysql-5.7.18-winx64\bin>mysql -hlocalhost -uroot -p
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 5.7.9 MySQL Community Server (GPL)
Copyright © 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
第二步:创建数据库
mysql> CREATE DATABASE IF NOT EXISTS yiibaidb DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
mysql> use yiibaidb;
#yiibaidb为先前下载好的
第三步:导入数据
mysql> use yiibaidb;
mysql> source D:/worksp/yiibaidb.sql;
#path路径可以自己自定义
第四步:测试导入结果
mysql> select city,phone,country from offices;
±--------------±-----------------±----------+
| city | phone | country |
±--------------±-----------------±----------+
| San Francisco | +1 650 219 4782 | USA |
| Boston | +1 215 837 0825 | USA |
| NYC | +1 212 555 3000 | USA |
| Paris | +33 14 723 4404 | France |
| Beijing | +86 33 224 5000 | China |
| Sydney | +61 2 9264 2451 | Australia |
| London | +44 20 7877 2041 | UK |
±--------------±-----------------±----------+
7 rows in set (0.00 sec)
第二部分:
1.SQL是什么?MySQL是什么?
SQL(发音为字母 S-Q-L或 sequel)是 Structured Query Language(结构
化查询语言)的缩写。SQL是一种专门用来与数据库沟通的语言
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性
SQL服务器的狭隘的,保守的存储引擎与MySQL服务器的可扩展,开放的存储引擎绝然不同。虽然你可以使用SQL服务器的Sybase引擎,但MySQL能够提供更多种的选择,如MyISAM, Heap, InnoDB, and Berkeley DB。MySQL不完全支持陌生的关键词,所以它比SQL服务器要少一些相关的数据库。同时,MySQL也缺乏一些存储程序的功能,比如MyISAM引擎联支持交换功能。
2.查询语句 SELECT FROM
语句解释:
例:SELECT
column_1, column_2, …
FROM
table_1
[INNER | LEFT |RIGHT] JOIN table_2 ON conditions
WHERE
conditions
GROUP BY column_1
HAVING group_conditions
ORDER BY column_1
LIMIT offset, length;
SELECT语句由以下列表中所述的几个子句组成:
SELECT之后是逗号分隔列或星号(*)的列表,表示要返回所有列。
FROM指定要查询数据的表或视图。
JOIN根据某些连接条件从其他表中获取数据。
WHERE过滤结果集中的行。
GROUP BY将一组行组合成小分组,并对每个小分组应用聚合函数。
HAVING过滤器基于GROUP BY子句定义的小分组。
ORDER BY指定用于排序的列的列表。
LIMIT限制返回行的数量。
去重语句:
从表中查询数据时,可能会收到重复的行记录。为了删除这些重复行,可以在SELECT语句中使用DISTINCT子句。DISTINCT子句的语法如下:SELECT DISTINCT
columns
FROM
table_name
WHERE
where_conditions;
前N个语句
CASE…END判断语句
3… 筛选语句 WHERE
语句解释
WHERE子句允许根据指定的过滤表达式或条件来指定要选择的行
运算符/通配符/操作符
操作符 描述
= 等于,几乎任何数据类型都可以使用它。
<> 或 != 不等于
< 小于,通常使用数字和日期/时间数据类型。

大于,
<= 小于或等于
= 大于或等于

  1. 分组语句 GROUP BY
    一)作用:GROUP BY 语句根据一个或多个列对结果集进行分组。会把值相同放到一个组中,最终查询出的结果只会显示组中一条记录。(字母不好理解没关系,看下面的例子秒懂)
    二)example:
    1)基本用法:
    根据 sex 字段分组,查询用户名、年龄、电话、性别。
    这就分组成功了!男的一组 女的一组,还有一组那啥,咳咳,搞不清楚的,但是都只显示了组中一条记录,我们的效果不够明显,接着看下面的例子。)
    原文:https://blog.youkuaiyun.com/yaruli/article/details/79239859
  2. 排序语句 ORDER BY
    语句解释
    正序、逆序
  3. 函数
    时间函数
    curdate()函数 - 返回当前日期。datediff()函数 - 计算两个DATE值之间的天数。day()函数 - 获取指定日期月份的天(日)。date_add()函数 - 将时间值添加到日期值。date_sub()函数 - 从日期值中减去时间值。date_format()函数 - 根据指定的日期格式格式化日期值。dayname()函数 - 获取指定日期的工作日的名称。dayofweek()函数 - 返回日期的工作日索引。extract()函数 - 提取日期的一部分。now()函数 - 返回当前日期和时间。month()函数 - 返回一个表示指定日期的月份的整数。str_to_date()函数 - 将字符串转换为基于指定格式的日期和时间值。sysdate()函数 - 返回当前日期。timediff()函数 - 计算两个TIME或DATETIME值之间的差值。timestampdiff()函数 - 计算两个DATE或DATETIME值之间的差值。week()函数 - 返回一个日期的星期数值。weekday()函数 - 返回一个日期表示为工作日/星期几的索引。year()函数 - 返回日期值的年份部分。
    数值函数
    字符串函数
    concat()函数 - 将两个或多个字符串组合成一个字符串。length()函数&char_length()函数 - 以字节和字符获取字符串的长度。left()函数 - 获取指定长度的字符串的左边部分。replace()函数 - 搜索并替换字符串中的子字符串。substring()函数 - 从具有特定长度的位置开始提取一个子字符串。trim()函数 - 从字符串中删除不需要的字符。find_in_set()函数 - 在逗号分隔的字符串列表中找到一个字符串。format()函数 - 格式化具有特定区域设置的数字,舍入到小数位数。
  4. SQL注释
  5. SQL代码规范
    [SQL编程格式的优化建议] SQL编程格式的优化建议 - 知乎
    [SQL Style Guide] SQL style guide by Simon Holywell
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值