目录
一,数据库的分类
1,按数据模型分
网状:IDS
层状:IMS
关系:Oracle、MySql
键值:BerkeleyDB
文档:CouchDB
列簇:Hbase
图:FlockDB
2,按部署方式分
嵌入式、单机、双机、集群、分布式、云数据库
3,按业务类型分
OLTP数据库、OLAP数据库、流数据库、时序数据库
4,按存储介质分
内存数据库、磁盘数据库、SSD数据库、SCM数据库
二,基础概念
数据模型:实体联系模型、关系模型、基于对象的数据模型、半结构化数据模型。
三,常用命令
四,规范化
五,OJ实战
力扣 511. 游戏玩法分析 I
活动表 Activity
:
+--------------+---------+ | Column Name | Type | +--------------+---------+ | player_id | int | | device_id | int | | event_date | date | | games_played | int | +--------------+---------+ 在 SQL 中,表的主键是 (player_id, event_date)。 这张表展示了一些游戏玩家在游戏平台上的行为活动。 每行数据记录了一名玩家在退出平台之前,当天使用同一台设备登录平台后打开的游戏的数目(可能是 0 个)。
查询每位玩家 第一次登陆平台的日期。
查询结果的格式如下所示:
Activity 表: +-----------+-----------+------------+--------------+ | player_id | device_id | event_date | games_played | +-----------+-----------+------------+--------------+ | 1 | 2 | 2016-03-01 | 5 | | 1 | 2 | 2016-05-02 | 6 | | 2 | 3 | 2017-06-25 | 1 | | 3 | 1 | 2016-03-02 | 0 | | 3 | 4 | 2018-07-03 | 5 | +-----------+-----------+------------+--------------+ Result 表: +-----------+-------------+ | player_id | first_login | +-----------+-------------+ | 1 | 2016-03-01 | | 2 | 2017-06-25 | | 3 | 2016-03-02 | +-----------+-------------+
SELECT player_id, MIN(event_date) as first_login FROM activity GROUP BY player_id;