大二一个学期学这么点内容,没有概念,只有实操

news2024/11/28 0:38:53

如何查看所有的数据库:

Show databases;

如何进入某个数据库:
use xxx;

如何新进数据库:

Create database jx;

如何删除数据库:

Drop database jx;

如何查看所有的表格:

Show tables;

如何创建数据表:

create table teacher(id int,name

varchar(10),address varchar(100),score float,time date);

如何修改表(添加列):

alter table teacher add phone varchar(11);

如何修改表(删除列):

alter table teacher drop score;

如何修改表(修改列):

alter table teacher modify phone int;

如何删除表:

drop table student;

表的约束管理:

非空约束 not null

唯一约束 unique

主键约束 primary key

默认约束 default

示例:

create table student

(id int primary key, name varchar(10) not null, phone varchar(11) default "18502348498",address

varchar(100) unique)

对于数据库中表的操作有4种操作:

增删改查

增加操作:

INSERT INTO employees_cn

 (employee_name, employee_address, employee_price) VALUES ("李兰","长沙",14500),("李兰妈妈","株洲",9000);

删除操作:

DELETE FROM employees_cn WHERE employee_name="诸葛亮";

DELETE FROM employees_cn WHERE employee_name="周杰" AND employee_address = "深圳";

修改操作:

UPDATE employees_cn set employee_address = "佛山" , employee_price = 51000 WHERE employee_name = "马超";

查询操作:

SELECT * from employees_cn WHERE employee_price >= 20000;

SELECT 1+2*8+5/2 as result;

去重:

SELECT   DISTINCT   employees_price    FROM  employees_cn;

分页:

SELECT * FROM city LIMIT 3,15;

解释:3:是从4开始,不包括3

15:往后数15行。

使用完全限定表名:

SELECT city.population FROM city;

排序:

SELECT*from employees_us    ORDER  BY    employees_price;

升序:asc,可以不写,因为默认升序。

降序:desc

以多个序列排序:

当第一个序列起作用时,那么后面的列不起作用,反之,后面的列才起作用。

SELECT  *  from    employees_us       ORDER  BY   employees_price,employees_name;

Where的使用:

SELECT * from  employees_cn where employees_price BETWEEN 10000 and 20000;

SELECT  *  from    employees_cn       where

employees_price>=10000and employees_price<=20000;

SELECT   *   from    employees_cn       where

employees_price >= 10000 and employees_price <= 20000

ORDER BY employees_price;

SELECT  *  from    employees_cn       where

Employees_name is null;

组合where使用:

And:

Select * form employees_cn where employees_name=”周杰” and employees_address=”抚州”;

Or:

Select * form employees_cn where employees_name=”周杰” or employees_address=”抚州”;

In:

Select * form employees_cn where employees_id=18 or employees_id=21 or employees_id=23;

等于

Select * form employees_cn where employees_id in(18,21,23);

Not in:

Select * form employees_cn where employees_address not in(“抚州”,”株洲”,”上海”);

Like的使用

当like单独使用的时候,它相当于=。

Select * from employees_us where employee_name like “jerry”;

通配符:

%:表示任意多个字符

Select * from employees_us where employee_name like “%jerry%”;

_:表示任意一个字符

Select * from employees_cn where employee_name like “张_”;

转义字符:

Select * from employees_cn where employee_name like “jerry/_%”escape”/”;

拼接字段

SELECT concat(employee_name,"---",employee_address) as "结果" FROM `employees_cn`;

计算字段

SELECT sid*score FROM `score`;

函数的使用

SELECT concat(employee_name,"---",employee_address) as "结果" FROM `employees_cn`

SELECT sid*score from score;

select LEFT("你好,你吃饭了吗?",4)

select RIGHT("你好,你吃饭了吗?",4)

select left(employee_name,2) from employees_cn where employee_id = 21

select LENGTH("你好")

select length(employee_name) from employees_cn where employee_id = 21

select SUBSTRING("你好,你吃饭了吗???",2)

select SUBSTRING("你好,你吃饭了吗???",2,4)

select SUBSTRING(employee_name,2) from employees_cn where employee_id = 21

日期处理函数

获取当前日期

SELECT NOW();

SELECT SYSDATE();

SELECT CURRENT_TIMESTAMP;

SELECT CURRENT_TIMESTAMP();

SELECT CURRENT_DATE;

SELECT CURRENT_TIME;

日期格式化:

select DATE_FORMAT('2008-08-09 22:23:01','%y-%m-%d %h:%i:%s');

字符串变日期:

select STR_TO_DATE('08/09/2008','%m/%d/%y');

时间变秒

select TIME_TO_SEC('01:00:05');

天数变日期

SELECT MAKEDATE(2019,300);

SELECT DAYOFYEAR("2019-10-23");

数值函数:

四舍五入

select ROUND(48.3847)

select ROUND(48.3847,1)

select MOD(CEIL(ROUND(employee_price)), 10) from employees_cn

向上取整

select CEIL(48.2)

向下取整

select FLOOR(48.9)

取余

SELECT MOD(18,3)

开方

SELECT SQRT(9)

指数

select POW(2,10)

绝对值

select ABS(-9)

平均值

Select avg(score) from score

计数

Select count(*) from score

Select count(distinct name) from score

最值

Select max(score), name from score

Select min(score), name from score

求和

Select sum(score) from score

分组查询

SELECT round(avg(score)),class from score GROUP BY class;

过滤分组

SELECT avg(score) as a,class from score GROUP BY class HAVING a < 80;

SELECT score from score where score < 80

where作用于表之后,having作用于组之后

select子句顺序

from, on, join, where, group by, having, select, distinct, order by, limit

select round(avg(score),1) as a, class from score where score > 70 GROUP BY class HAVING a >= 85 ORDER BY a LIMIT 0,2;

子查询:

select * from score where score = (select min(score) from score)

也就等于下面两个语句之和

select min(score) from score;

select * from score where score = 60;

连接查询

适用于多表操作

外连接:包括左连接、右连接

SELECT a.*, b.* from student_info a left join student_score b on a.student_id = b.student_id

SELECT a.*, b.* from student_info a right join student_score b on a.student_id = b.student_id

笛卡尔积连接:包括内连接、自然连接、交叉连接、自连接(原理: 笛卡尔积)

select a.*, b.* from student_info a inner join student_score b

select a.*, b.* from student_info a inner join student_score b on a.student_id = b.student_id

SELECT A.*, B.* from student_info A cross join student_score B

SELECT A.*, B.* from student_info A cross join student_score B on A.student_id = B.student_id

SELECT A.*, B.* from student_info A natural join student_score B

select B.* from score as A join score as B on A.score < B.score and A.name = "王兰"

组合查询

select vend_id, prod_id, prod_price from products where prod_price < 5 union select vend_id, prod_id, prod_price from products where vend_id in (1001,1002)

select vend_id, prod_id, prod_price from products where prod_price < 5 union all select vend_id, prod_id, prod_price from products where vend_id in (1001,1002)

select vend_id, prod_id, prod_price from products where prod_price < 5 union all select vend_id, prod_id, prod_price from products where vend_id in (1001,1002) order by prod_price

union的结果去重,而union all的结果不去重

视图

如何创建视图 create view abc as select * from employees_cn where employee_id BETWEEN 14 and 20

视图的操作和表的操作相同

索引

作用:提高检索速度

如何创建索引 create index aaa on employees_cn(employee_name, employee_price)

如何使用索引

事务

  1. 概念
  2. 特征 原子性 一致性 隔离性 持续性

start TRANSACTION;

INSERT into score (name, class, score, sex, phone) VALUES ("智慧化", "软件1" ,'43', "女", '1213');

SAVEPOINT p;

INSERT into score (class, score, sex, phone) VALUES ("张晓霞", "软件1", "23", "女", '12133');

ROLLBACK to SAVEPOINT p;

commit;

常量

变量

用户变量 @后为变量

set @name = "李兰";

select * from employees_cn where employee_name = @name;

select @xxx := (@xxx := 8) + 2;

局部变量

作用于存储过程

DECLARE abc int DEFAULT 0;

系统变量

Select CURRENT_TIME

Select CURRENT_USER

If控制语句

Case控制语句

循环控制语句

自定义函数

存储过程

触发器

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Segmentation of retinal vessels based on MRANet

随手把一篇论文的创新部分抽取出来 MLF 为了更好地聚合每一层的上采样特征信息和MSR块的信息&#xff0c;在解码路径中使用了MLF块&#xff0c;这允许最大限度地重用功能&#xff0c;从而减少细节的损失。MLF块的结构如图2所示。 如图2所示&#xff0c;有两种输入:input1和inp…

直接攻击,越狱攻击,道德攻击……这样做,ChatGPT 就会泄漏你的隐私

夕小瑶科技说 原创作者 | 小戏 大模型的出现让我们的隐私比以往任何时候都危险。 一个很直观的例子&#xff0c;在大模型向黑洞一样不断吞噬现有网络中的文本数据之时&#xff0c;伴随着模型训练的文本数量从 GPT-2 的 40GB 文本到 GPT-3 的 45TB 文本&#xff0c;我们可以非常…

郑哲:学习、应用初探与探索创新 | 提升之路系列(四)

导读 为了发挥清华大学多学科优势&#xff0c;搭建跨学科交叉融合平台&#xff0c;创新跨学科交叉培养模式&#xff0c;培养具有大数据思维和应用创新的“π”型人才&#xff0c;由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项…

python中snap-stanford指导手册(主要用于做图网络)

文章目录 RequirementSnap操作手册Basic TypesVector TypesHash Table TypesPair TypesGraph and Networks Types&#xff08;graph和network类型&#xff09;Node and Edge Operation Requirement 需要提前安装用于操作图网络的snap库&#xff0c;这个库中有很多现成的图数据…

物联网平台:一文读懂什么是物模型

文章目录 一、什么是物模型二、标准参数&#xff08;1&#xff09;标准参数的意义 三、物模型字段详细说明&#xff08;1&#xff09;物模型的每个属性包含以下字段&#xff08;2&#xff09;物模型的每个方法包含以下字段&#xff08;3&#xff09;物模型的每个事件包含以下字…

【Python】【进阶篇】15、如何启动Django项目详解

目录 如何启动Django项目详解1. 启动项目并实现访问1) 启动项目命令介绍2) manage.py文件子命令 如何启动Django项目详解 我们使用 django-admin 命令成功创建项目后&#xff0c;我们要如何启动这个项目呢&#xff1f;本节的学习目标是能够通过本地回送地址 127.0.0.1 成功访问…

第十一章 Transform组件(上)

本章节我们介绍Transform类&#xff0c;它是一个组件&#xff0c;每一个游戏对象有拥有该组件。因此&#xff0c;它值得我们重点介绍一下。Transform代表了游戏对象的世界变换&#xff0c;也就是移动&#xff0c;选择和缩放。 首先&#xff0c;我们先介绍它的属性&#xff08;…

Linux Ansible角色介绍

目录 角色的基础结构 角色来源与应用 Galaxy角色 系统角色 自定义角色 角色&#xff08;roles&#xff09;用于层次化、结构化地组织playbookroles通过标准化目录结构来装载变量文件、tasks&#xff08;模块任务&#xff09;、handlers&#xff08;处理程序&#xff09;、…

标准ACL配置

标准ACL配置 【实验目的】 掌握标准ACL的配置。 验证配置。 【实验拓扑】 实验拓扑如图1所示。 图1 实验拓扑 设备参数如表所示。 表1 设备参数表 设备 接口 IP地址 子网掩码 默认网关 R1 S0/3/0 192.168.1.1 255.255.255.252 N/A Gi0/0/0 192.168.2.1 255.…

大数据分析利器之Power BI,你是否已经掌握?(文末送书)

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

【校招VIP】IT职位校招简历千万不要用两栏的模板,另外,告诉你个陷阱:越个性机会越少

前两天在简历指导的直播里&#xff0c;发现了不应该出现的一种简历格式问题。 有的同学喜欢用那种竖栏两栏的简历模板。 我们建议研发岗的校招&#xff0c;简历不要这么去写。 因为两栏的话&#xff0c;实际上有一个很大的问题。 因为简历上需要写项目经历&#xff0c;需要写…

你最关心的4个零代码问题,ChatGPT 帮你解答了!

作为人工智能&#xff08;AI&#xff09;新型聊天机器人模型 ChatGPT&#xff0c;刚上线5天就突破100万用户&#xff0c;两个多月全球用户量破亿&#xff0c;不愧为业界最炙热的当红炸子鸡。 ChatGPT 是一种语言生成模型&#xff0c;由 OpenAI 开发和训练。它是基于 Transform…

C语言函数大全-- s 开头的函数(1)

C语言函数大全 本篇介绍C语言函数大全-- s 开头的函数&#xff08;1&#xff09; 1. sbrk 1.1 函数说明 函数声明函数功能void *sbrk(intptr_t increment);它是一个 Unix 系统的函数&#xff0c;用于调整程序的堆空间。 参数&#xff1a; increment &#xff1a; 增加的堆空…

机器学习算法系列(五)-- 支持向量机(SVM)

机器学习算法系列之–支持向量机&#xff08;揭开SVM的神秘面纱&#xff09; 支持向量机&#xff08;Support Vector Machine &#xff1a;SVM&#xff09;&#xff1a;二分类算法模型&#xff0c;数据集较小时&#xff0c;分类效果甚至优于神经网络。 其最大的特点在于&#x…

C++ muduo日志库的使用

muduo日志库的使用 一、引用二、使用方法2.1、引入头文件2.2、 启动日志库2.3、记录日志2.4、输出格式2.5、日志滚动 三、总结 一、引用 muduo是一个高性能的网络库&#xff0c;它的日志库采用了异步、多线程的方式来记录日志&#xff0c;其主要特点包括&#xff1a; 能够按大…

使用Pano2VR实现全景图切换和平面图效果

内容简介 本文在文章《使用Pano2VR实现背景音乐、放大/缩小、旋转、缩略图和直线/立体/鱼眼模式等》基础上&#xff0c;增加全景图切换和平面图效果&#xff1b;效果如下图&#xff08;为了可以上传缩小屏幕&#xff0c;属于PC端运行&#xff09;&#xff1a; 实现过程 1. 运行…

【Bus】编写一个Demo虚拟的总线-设备-驱动模型

文章目录 1. 前言2. 总线驱动模型三要素2.1 总线2.2 设备2.3 驱动 3. Demo Code3.1 virt_bus_core.c3.2 virt_device.c3.3 virt_driver.c 4. 工程代码下载地址5. 参考资料 1. 前言 Linux平台为了驱动的可重用性&#xff0c;虚拟了很多的虚拟总线。很经典的就是platform总线&am…

Android Room数据库如何使用增删改查

先看运行效果图。 1.在app下的build.gradle。在dependencies{}闭包中添加如下依赖 //roomdef room_version "2.3.0"implementation "androidx.room:room-runtime:$room_version"annotationProcessor "androidx.room:room-compiler:$room_version&q…

爱奇艺DRM修炼之路

01 DRM的定义和作用 DRM&#xff0c;即数字版权管理&#xff08;digital rights management&#xff09;&#xff0c;是在数字内容交易过程中&#xff0c;对知识产权进行保护的技术、工具和处理过程。它的目的是防止数字内容被未经授权的用户复制、修改和分发&#xff0c;以保护…

解读TaskMatrix.AI

ChatGPT在广泛的开放域任务上展现出令人瞩目的强大对话、上下文学习和代码生成能力&#xff0c;而且它所获得的常识知识还可以为特定领域的任务生成高级解决方案概要。不过&#xff0c;除了更强大的学习、理解和生成能力&#xff0c;ChatGPT还有哪些问题需要解决呢&#xff1f;…