当前位置: 首页 > article >正文

SQL语言——MySQL

SHOW DATABASES;##展示数据库
CREATE DATABASE test01;##创建数据库
DROP DATABASE test01;##删除数据库

USE test;##使用数据库
INT--整数
DECIMAL(3,2)--有小数点的数
VARCHAR(10)--字串
BLOB--存放二进制资料
DATE--日期 YYYY-MM-DD
TIMESTAMP--时间 YYYY-MM-DD HH:MM:SS

CREATE TABLE student(##创建表
    student_id INT PRIMARY KEY,
    name VARCHAR(10),
    major VARCHAR(20),
)

DESCRIBE student;##展示表

DROP TABLE student;##删除表

ALTER TABLE 'student' ADD sex DECIMAL(3,2);##增加属性

ALTER TABLE student DROP COLUMN sex;##删除属性

INSERT INTO student VALUES(1,‘小白’,'历史')##插入数据

SELECT * FROM student;##查看表格信息

##constraints 限制,约束
NOT NULL##不能为空
UNIQUE##唯一,不能重复
DEFAULT ‘语文’ ##默认值
id INT AUTO_INCREMENT ##自动编号,每次自动+1

##修改删除资料
        CREATE TABLE student(##创建表
           student_id INT PRIMARY KEY,
           name VARCHAR(10),
           major VARCHAR(20),
           score INT,
        )
##修改major下的英语修改为英语文学
        UPDATE student SET 'major' = '英语文学'
        WHERE 'major'='英语'

        UPDATE student SET 'major' = '生物','name'='张三'
        WHERE 'student_id'='3' OR 'name'='张四'

AND 且      OR 或

##删除
        DELETE FROM 'student'
        WHERE 'student_id'=4;

##排序
        SELECT * FROM 'student' ORDER BY 'score' DESC;
DESC 降序  默认升序

LIMIT 3;##后面加上limit只展示前三个

<>不等于

 排序 order by

        SELECT * FROM chengjidan ORDER BY 'score'

取score前三高的数据

        SELECT * FROM chengjidan ORDER BY 'score' DESC LIMIT 3

将选择后的数据去除重复值——distinct

        SELECT DISTINCT ‘sex’ FROM 'student‘

聚合函数

计算学生的人数

        SELECT count(*) FROM ’student‘

取得出生年龄在2000-01-01之后的女性学生人数

        SELECT COUNT(*) FROM 'student'

        WHERE ’sex‘=’女‘ AND 'birth_date'>'2000-01-01';

求班级学生成绩的平均值

        SELECT AVG('score') FROM student;

求班级学生成绩的总和

        SELECT SUM('score') FROM student;

最大值MAX    最小值MIN

 wildcards  万用字符

%多个     _单个

取得手机尾号为225的客户

        SELECT *

        FEOM 'client'

        WHERE 'phone' LIKE '%225';

 union  把两个表的查询结果放一起

把教师名字和学生名字都查询出来

        SELECT sname FROM student

        UNION

        SELECT tname FROM teacher;

注:搜寻的结果数量要是相等的,做合并的资料形态要是一样的

 join  把两个表格连接在一起

        SELECT stu_name,cla_score

        FROM ‘student’

        JOIN 'class'

        ON ‘stu_id’='cla_id';

LEFT JOIN:  join左边的表格无论条件是否成立都回传,右边的表格条件成立才回传

 subquery  子查询

找出研发部门的经理名字

        先找研发部门的manager_id,根据manager_id 找经理名字

                SELECT manager_id FROM 'bumen' WHERE 'bumen_name' = '研发';

               

                SELECT manager_name

                FROM 'employee'

                WHERE manager_id=(

                        SELECT manager_id

                        FROM 'bumen'

                        WHERE 'bumen_name' = '研发'

                );


http://www.kler.cn/a/597007.html

相关文章:

  • 解决 ECharts Map3D 在高分辨率大屏下鼠标与地图位置错位的问题
  • 如何理解java中Stream流?
  • Python Django入门(创建网页:学习笔记主页)
  • hive:处理JSON格式(get_json_object()函数),连续登录题型,快速生成表(explode,stack),迭代计算
  • 深入理解 lt; 和 gt;:HTML 实体转义的核心指南!!!
  • 批量文件分析器:使用Python从PPT和PDF中提取文本
  • 云服务器运维
  • 022-spdlog
  • python转换wav到mp3
  • AI大模型训练教程
  • C#里使用libxl来对列或行进行分组显示
  • 如何编写SLURM系统的GRES资源插件
  • 【电子元器件篇】——8.LDO
  • 深度学习 Deep Learning 第7章 深度学习的正则化
  • YOLOv12来了!最快的速度学习她,改进它并发表成果!赋能AI,改变世界! [特殊字符] YOLOv12 不仅是技术的飞跃,更是推动人工智能应用的强大引擎!选择 YOLOv12,开启智能未来!
  • 动态规划入门详解
  • 7. 二叉树****
  • AXI总线之相关应用
  • ffmpeg+ubuntu编译库(完整版本)
  • Scrapy 入门教程