MySQL- CRUD

一、INSERT  添加

公式  INSERT INTO table_name [(column [, column...])] VALUES (value [, value...]);

示例:

CREATE TABLE `goods` (id INT ,good_name VARCHAR(10),price DOUBLE );
#添加数据
INSERT INTO goods (id,good_name,price ) VALUES (20,'华为手机', 2000);				

 ·细节说明
1.插入的数据应与字段的数据类型相同。比如把‘abc'添加到int类型会错误
2.数据的长度应在列的规定范围内,例如:不能将一个长度为80的字符串加入到长度为40的列中。
3.在values中列出的数据位置必须与被加入的列的排列位置相对应
4.字符和日期型数据应包含在单引号中。
5.列可以插入空值[前提是该字段允许为空],insert into table value(null)
6.insert into tab_name (列名..) values(),(),() 形式添加多条记录

INSERT INTO goods  (id,good_name,price)VALUES (31,'三星手机',2000),(40,'小米手机',2000),(50,'vivo手机',2000);	


7.如果是给表中的所有字段添加数据,可以不写前面的字段名称

INSERT INTO goods  VALUES (30,'华为手机', 2000);					

8.默认值的使用,当不给某个字段值时,如果有默认值就会添加,否则报错

二、UPDATE 更新

UPDATE    tbl name
                 SET col_namel=exprl [, col_name2=expr2 ..]
                 [WHERE where definition]

特别注意,一定要写where条件, 更新一时爽,交付火葬场! (强烈建议备份好数据)

#给101员工的工资增加1000
UPDATE employee SET salary = salary+1000 where id = 101;

三、DELETE 删除

特别注意,一定要写where条件, 更新一时爽,交付火葬场! (强烈建议备份好数据)

  公式  delete from tbl_name
                 [WHERE where definition]

delete from tbl_name[WHERE where definition]

1.如果不使用where子句,将删除表中所有数据。
2.Delete语句不能删除某一列的值(可使用update设为null或者")
3.使用delete语句仅删除记录,不删除表本身。如要删除表,使用droptable语句。drop table表名;

四、SELECT 添加 

 1、公式: 

SELECT [DISTINCT] *|{columnl,column2.column3..} FROM tablename;

解释:DISTINCT 表示筛掉重复数据,

示例:

CREATE TABLE student (id INT NOT NULL DEFAULT 1,`name` varchar(20) not null default '',chinese float not null default 0.0,english float not null default 0.0,math float not null default 0.0 );insert into student values (1,'曹操',77,89,85);insert into student values (2,'刘备',80,89,90);insert into student values (3,'孙权',87,79,86);insert into student values (4,'诸葛亮',88,89,90);insert into student values (5,'郭嘉',82,89,85);insert into student values (6,'周瑜',79,89,99);insert into student values (7,'荀彧',79,90,80);
#查询所有学生成绩			 
select * from student;
#查询所有学生姓名及对应的英语成绩
select `name`, english from student; 
#查询所有英语成绩并除去重复的值
select distinct english from student;

2、使用表达式对查询的列进行运算

        SELECT *|{columnl |expression, column2 |expression,..}
              FROM tablename;

3、别名

        select colunm_name as 别名 from table_name;

#统计所有学生的总分
select name, (chinese+english+math) from student;
#给所有学生的总分加十分
select name, (chinese+english+math+10) from student;
#使用别名表示学生分数
select name, (chinese+english+math+10) AS TOTAL_SCORE from student;

4、where子句中,经常使用的运算符

#查询姓名为荀彧的学生成绩
select name, (chinese+english+math) from student where name = '荀彧';
#查询英语成绩大于等于90分的同学
select name, (chinese+english+math) from student where english >=90;
#查询总分大于200分的所有同学
select name, (chinese+english+math) from student where (chinese+english+math) >200;
#查询math大于60分且id>90的学生成绩
select name, (chinese+english+math) from student where math >60 and id <3;
#查询总分大于200分且数学成绩小于语文成绩的孙姓同学
select name, (chinese+english+math) from student where  (chinese+english+math) >200 and math < chinese and `name` like '孙%';
#1、查询英语分数在80 - 90 之间的同学
select *  from student where english between 80 and 90 
#2查询数学分数为89,90,91的同学
select * from student where math in (89,90,91);
#3查询所有姓李的学生成绩
select * from student where 	`name` like '李%';
#4查询数学分>80,语文分>80的同学
select * from student where math>80 and chinese >80;
#1查询语文分数在70 - 80之间的同学
select * from student where chinese between 70 and 80;
#2查询总分为189,190,191的同学
select * from student where (chinese+english+math) in (189,190,191);
#3查询所有姓孙 或者 姓曹 的学生成绩
select * from student where `name` like '孙%' or `name` like '曹%';
#4查询数学比语文多30分的同学
select * from student where (math-chinese)>30;

5、使用order by子句排序查询结果。

公式:  SELECT columnl,column2. column3..
            FROM     table
           order by column asc|desc, ...;

1.Order by指定排序的列,排序的列既可以是表中的列名,也可以是select语句后指定的列名。
2.Asc升序[默认]、Desc降序
3.ORDER BY子句应位于SELECT语句的结尾。

#对数学成绩排序后输出【升序】
select math  from student order by math;
#对总分按从高到底的顺序输出
select (chinese+english+math) as total_score from student order by total_score;
#对姓刘的学生成绩(总分)排序输出(升序)
select (chinese+english+math) as total_score from student where `name` like '刘%' order by total_score;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/227691.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【带头学C++】----- 八、C++面向对象编程 ---- 8.5 struct结构体类型增强使用说明

目录 8.5 struct结构体类型增强使用说明 8.5.1 C结构体可以定义成员函数 8.5.2 c中定义结构体变量可以不加struct关键字 8.6 bool布尔类型关键字 8.5 struct结构体类型增强使用说明 第六章对结构体的使用、内存对齐以及数组、深拷贝和浅拷贝进行了一个详细的说明&#xff0c…

Redis队列stream,Redis多线程详解

Redis 目前最新版本为 Redis-6.2.6 &#xff0c;会以 CentOS7 下 Redis-6.2.4 版本进行讲解。 下载地址&#xff1a; https://redis.io/download 安装运行 Redis 很简单&#xff0c;在 Linux 下执行上面的 4 条命令即可 &#xff0c;同时前面的 课程已经有完整的视…

方差分析汇总

一文整理了方差分析的全部内容&#xff0c;包括方差分析的定义&#xff08;基本思想、检验统计量的计算、前提条件&#xff09;、方差分析分类&#xff08;单因素、双因素、多因素、事后多重比较、协方差分析、重复测量方差分析&#xff09;、方差分析流程&#xff08;数据格式…

HTTP/3 为什么正迅速崛起

超文本传输协议&#xff08;HTTP&#xff09;作为互联网的基石&#xff0c;一直在网页加载、视频流传输、应用获取数据等方方面面发挥重要作用。 去年&#xff0c;负责定义互联网技术的互联网工程任务组&#xff08;IETF&#xff09;将该协议的最新版本 HTTP/3 定为标准。在此…

大模型训练为什么用A100不用4090

这是一个好问题。先说结论&#xff0c;大模型的训练用 4090 是不行的&#xff0c;但推理&#xff08;inference/serving&#xff09;用 4090 不仅可行&#xff0c;在性价比上还能比 H100 稍高。4090 如果极致优化&#xff0c;性价比甚至可以达到 H100 的 2 倍。 事实上&#x…

如何控制Spring工厂创建对象的次数?详解Spring对象的声明周期!

&#x1f609;&#x1f609; 学习交流群&#xff1a; ✅✅1&#xff1a;这是孙哥suns给大家的福利&#xff01; ✨✨2&#xff1a;我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 &#x1f96d;&#x1f96d;3&#xff1a;QQ群&#xff1a;583783…

SPSS生存分析:寿命表分析

前言&#xff1a; 本专栏参考教材为《SPSS22.0从入门到精通》&#xff0c;由于软件版本原因&#xff0c;部分内容有所改变&#xff0c;为适应软件版本的变化&#xff0c;特此创作此专栏便于大家学习。本专栏使用软件为&#xff1a;SPSS25.0 本专栏所有的数据文件请点击此链接下…

15.spring源码解析-invokeBeanFactoryPostProcessors

BeanFactoryPostProcessor接口允许我们在bean正是初始化之前改变其值。此接口只有一个方法: void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory);有两种方式可以向Spring添加此对象: 通过代码的方式: context.addBeanFactoryPostProcessor 通过xml…

天鹅湖国家旅游度假区 | 展柜OLED透明屏:创新展示提升互动体验

天鹅湖国家旅游度假区 | 展柜OLED透明屏 产品&#xff1a;一块55寸OLED透明屏嵌入玻璃安装 应用场景&#xff1a;用在天鹅湖国家旅游度假区——三门峡城市文化客厅展馆中的一个透明展示柜&#xff0c;用一块55寸OLED透明屏嵌入展示柜的玻璃&#xff0c;让观众即可以看到展柜里…

【RTP】5:从network收到rtp包到组帧之间的数据传递

m79 代码。从网络中收到rtp、rtcp 后交给call 进行处理这是因为call 具有PacketReceiver 的能力。收到的包是一个 :CopyOnWriteBuffer 类型:rtc::CopyOnWriteBuffer packetclass Call PacketReceiver 准备delivery包:返回delivery结果:}成功、包错误、ssrc未知 D:\zhb-dev\…

求和(打表题)

题目 打个表发现当 n 时答案为 p &#xff0c;否则为 1 &#xff0c;然后套板子。 #include <iostream> #include <algorithm> #include <vector> #include <cstring> #include <cmath>using namespace std;#define int long long using i64 …

Docker+Anaconda+CUDA+cuDNN

一、导语 因为要复现文献的需求和实验室里师兄想要给我提升能力的多方面因素在一起&#xff0c;所以学习并实现了相关安装。在这里做一个记录&#xff0c;方便日后查看&#xff0c;如果能给其他同学带来便捷就更好了。 在这篇文章中&#xff0c;我的目标是搭建一个可以使用Py…