zoukankan      html  css  js  c++  java
  • [牛客数据库SQL实战] 准备篇

    资源准备

    MySQL提供的示例数据库

    • Employees

    资源介绍页面: https://dev.mysql.com/doc/employee/en/

    员工样本数据库提供了分布在六个独立表中的大量数据库(约160Mb)的组合,总共包含400万条记录。
    它支持多种存储引擎类型(InnoDB,MyISAM,Maria...)。

    数据库结构显示
    employees-schema

    • Sakila

    资源介绍页面:https://dev.mysql.com/doc/sakila/en/

    MySQL官方提供的一个模拟DVD租赁信息管理的数据库

    数据库结构显示
    sakila-schema

    工具准备

    数据库管理工具和 SQL 客户端 DBeaver
    下载页面: https://dbeaver.io/download/

    技术准备

    常用的SQL语法

    显示当前数据库列表
    > show databases;
    
    显示当前表格列表
    > show tables;
    
    切换当前活动数据库
    > use [database_name];
    
    显示表格详情/描述
    > desc [table_name];
    
    查看表格内容(*全部/某些属性)
    > select [*/feature_name] from [table_name];
    
    条件查询 where
    > select [features_name] from [table_name] where [features_name] = ?;
    
    排序 使用order by子句   
    desc 降序 asc 升序
    > select [features_name] from [table_name] order by [features_names] [desc/asc];
    
    限制输出 
    LIMIT m,n : 表示从第m+1条开始,取n条数据;
    LIMIT n : 表示从第0条开始,取n条数据,是limit(0,n)的缩写。
    > select [features_name] from [table_name] limit m, n;
    
    去重查询 distinct
    > select distinct [features_name] from [table_name];
    
    分组条件查询  group by ... having
    > select [feature_name] from [table_name] group by [feature_name] having [expr];
    
    > WHERE语句在GROUP BY语句之前;SQL会在分组之前计算WHERE语句。   
    > HAVING语句在GROUP BY语句之后;SQL会在分组之后计算HAVING语句。
    
    两表合并 join - left join - right join
    > select [*/feature_names] from [table_name_A] as a left join [table_name_B] as b on a.[feature_name]=b.[feature_name];
    

    资源查询

    MySQL 菜鸟教程: https://www.runoob.com/mysql/mysql-tutorial.html

    个人运行环境

    操作系统:Linux Deepin 15.9.2桌面版
    MySQL版本:5.7.21-1 (Debian)
    DBeaver版本:6.1.2 社区版

    实战地址

    牛客网 数据库SQL实战
    https://www.nowcoder.com/ta/sql?page=0

  • 相关阅读:
    oracle 聚合函数 LISTAGG ,将多行结果合并成一行
    oracle 数据库对于多列求最大值
    Java 简单的rpc 一
    centos7 安装php7
    win10下VM 中centos 安装共享文件
    CentOS7 cannot find a valid baseurl for repo base
    分布式事务
    利用虚拟映射文件加密大文件
    动态代理
    c++ 11 lambda表达式
  • 原文地址:https://www.cnblogs.com/slowbirdoflsh/p/11199539.html
Copyright © 2011-2022 走看看