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

SQL语言1

 创建数据库 CREATE DATABASE

展示数据库 SHOW DATABASE

整数 INT 

有小数点的数 DECIMA(m, n) #m是有几位数,n是有几位小数

字符串 VARCHAR(n)

(Binary Large Object)图片 影片 BLOB

‘YYYY-MM-DD’日期  DATA

'YYYY-MM-DD HH:MM:SS' 记录时间 TIMESTAMP

数据库中加入表格

CREATE DATABASE `sql_tutorial`;
SHOW DATABASES;
USE `sql_tutorial`;CREATE TABLE student(`student_id` INT PRIMARY KEY,`name` VARCHAR(20),`major`VARCHAR(20)--PRIMARY KEY(student)
);DESCRIBE `student`;--显示表格
DROP TABLE 'student'; --删除表格ALTER TABLE `student` ADD gpa DECIMAL(3,2); --增加属性
ALTER TABLE `student` DROP COLUMN gpa;--删除属性--存入数据
INSERT INTO `student` VALUES(1,'小白','历史');
INSERT INTO `student` ('name','major','student_id')VALUES('小白','历史',1);
SELECT * FROM 'student'--列出全部数据--constraints 限制CREATE TABLE student(`student_id` INT PRIMARY KEY,`name` VARCHAR(20) NOT NULL,--数据不能为空`major`VARCHAR(20) UNIQUE,--数据不能重复`major_1`VARCHAR(20) DEFAULT'历史',--新增预设值`name` VARCHAR(20) AUTO_INCREMENT,--自动增加
);--删除表格
DROP TABLE `student`SET SQL_SAFE_UPDATAS = 0; --关闭预设模式--更改表格内容
UPDATA `student` SET `major` = `英语文学` WHERE `major` = `英语`;UPDATA `student` SET `major` = `生化` WHERE `major` = `生物` OR `major` = `化学`;UPDATA `student` SET `name`=`小惠`,`major` = `生化` WHERE `student` =1 ;UPDATA `student` SET `name`=`小惠`;--name属性全改为小惠--删除数据DELETE FROM `student` WHERE `name`=`小惠` ;DELETE FROM `student` WHERE `score`>60;DELETE FROM `student` --删除整个表格--取得资料
SELECT `name`,`major` FROM `student`;
SELECT * FROM `student`;--取得所有数据
SELECT * FROM `student` ORDER BY `score` ASC; --若什么都没写则预设ASC,由低到高。DESC由高到低。SELECT * FROM `student` ORDER BY `score` ,`student_id`;--先根据score做排序,如果score相同,再根据student_id做排序。
SELECT * FROM `student` LIMIT 2;--回传前两笔资料。
SELECT * FROM `student` ORDER BY `score` LIMIT 2; --先按照score做排序,然后回传前两笔资料。
SELECT * FROM `student` WHERE`major`=`英语`OR`score`>=70;--回传主修是英语或者分数大于等于70
SELECT * FROM `student` WHERE`major` IN(`历史`,`英语`,`生物`);

大于 >

小于 <

大于等于 >=

等于=

不等于<>

-- 创建公司资料表格CREATE DATABASE `sql_tutorial`;SHOW DATABASES;USE `sql_tutorial`;DROP TABLE `student`;SET SQL_SAFE_UPDATES = 0; --关闭预设自动更新--创建表格CREATE TABLE `employee`(`emp_id` INT PRIMARY KEY,`name` VARCHAR(20),`brith_date` DATE,`sex` VARCHAR(1),`salary` INT,`branch_id` INT,`sup_id` INT);DROP TABLE `employee`;describe TABLE employee;--创建部门表格CREATE TABLE `branch`(`branch_id` INT PRIMARY KEY,`branch_name` VARCHAR(20),`manager_id` INT,FOREIGN KEY (`manager_id`) REFERENCES `employee`(`emp_id`) ON DELETE SET NULL   --FOREIGN KEY表示外键;REFERENCES 表示外键接的表格名,再加外接的表格的primary key);--对公司表格补上外键foreign key,ALTER TABLE `employee` ADD FOREIGN KEY(`branch_id`) --加外键 branch_id属性REFERENCES `branch`(`branch_id`) --对应到branch表格的branch_id的属性ON DELETE SET NULL;ALTER TABLE `employee`ADD FOREIGN KEY(`sup_id`) --加外键sup_idREFERENCES `employee`(`emp_id`) --对应到branch表格的branch_id的属性ON DELETE SET NULL; --创建客户表格CREATE TABLE `client`(`client_id` INT PRIMARY KEY,`client_name` VARCHAR(20),`phone` VARCHAR(20));--创建worh_with表格CREATE TABLE `work_with`(`emp_id` INT,`client_id` INT,`total_sales` INT,PRIMARY KEY ( `emp_id`, `client_id`),FOREIGN KEY (`emp_id`) REFERENCES `employee`(`emp_id`) ON DELETE CASCADE,FOREIGN KEY (`client_id`) REFERENCES `client`(`client_id`) ON DELETE CASCADE  );--填写表格数据--有foreign key时,对应的表没有相应资料时,直接输入会报错,要用NULL代替INSERT INTO `branch` VALUES(1,'研发',NULL);INSERT INTO `branch` VALUES(2,'行政',NULL);INSERT INTO `branch` VALUES(3,'查询',NULL); INSERT INTO `employee` VALUES(206,'小黄','1998-10-08','F',50000,1,NULL); --把原本branch的manager_id=NULL改回来UPDATE `branch`SET `manager_id`=206WHERE `branch_id`=1;UPDATE `branch`SET `manager_id`=207WHERE `branch_id`=2;UPDATE `branch`SET `manager_id`=208WHERE `branch_id`=3; --增加客户信息INSERT INTO `client` VALUES(400,'阿狗','1234567'); --增加work_with 信息
NSERT INTO `work_with` VALUES(206,400,70000);--取得员工资料
SELECT * FROM`employee`;--按薪水由低到高取得员工资料
SELECT * FROM `employee`OREDER BY`salary`;
--取得薪水前3高的员工
SELECT * FROM `employee`OREDER BY`salary`DESC LIMIT3;
--取得所有员工的名字
SELECT `name` FROM `employee`;
--取得所有员工的性别
SELECT DISTINCT `sex`FROM`employee`--distinct显示不重复的。
--取得客户资料
SELECT * FROM`client`;
--取得员工人数
SELECT COUNT(`sup_id`)FROM`employee`;--输出是员工数量--取得所有出生在1996-10-01之后出生的女性员工SELECT COUNT(*) FROM `employee`WHERE `brith_date` > '1996-10-01' AND `sex`='F'; --取得所有员工的平均薪水SELECT AVG(`salary`) FROM `employee`;--取得所有员工的总和薪水 sumSELECT SUM(`salary`) FROM `employee`;--取得最高/低员工的薪水 max,minSELECT MAX(`salary`) FROM `employee`; --widcards 万用字元 %代表多个字元;_代表一个字元
--1、取得电话号码尾数是335的客户
SELECT * FROM `client` WHERE `phone` LIKE`%335`;
--2、取得电话号码开头是245的客户
SELECT * FROM `client` WHERE `phone` LIKE`245%`;
--3、取得电话号码中间是245的客户
SELECT * FROM `client` WHERE `phone` LIKE`%245%`;
--4、取得姓艾的客户
SELECT * FROM `client` WHERE `client_name` LIKE`艾%`;
--取得生日在10月的员工SELECT * FROM `employee`WHERE `brith_date` like '_____10%'; --五个_--union 连集 可以合并搜寻的结果,合并的属性资料形态要一样,不同表格的属性数目要一样,不能用表格1的2个属性去和表格2的1个属性合并--员工名字和客户名和部门名字字合并 SELECT `name` FROM `employee` UNION SELECT `client_name` FROM `client`;SELECT `name` FROM `employee` UNION SELECT `client_name` FROM `client`UNION SELECT `branch_name` FROM `branch`;--员工id+员工名字UNION 客户id+客户名字
SELECT `emp_id`,`name` FROM`employee`UNION SELECT `client_id`,'client_name' FROM`client`;
--员工id+员工名字UNION 客户id+客户名字,并且改名字
SELECT `emp_id`AS`total_id`,`name`AS`total_name` FROM`employee`UNION SELECT `client_id`,'client_name' FROM`client`;--员工薪水union销售金额
SELECT `salary` FROM`employee`UNION SELECT `total_sales` FROM`works_with`;--join 链接 在join左边是左边表格,在join右边是右边表格,右边表格条件成立才回传资料,左边表格全部资料都会回传,没有对应右边的,则显示NULL
--right join则相反
INSERT INTO `branch`VALUES(4,`偷懒`,NULL);--新增一笔资料
--取得所有部门经理的名字
SELECT `emp_id`,`name`,`branch_name` FROM `employee` JOIN `branch` ON `emp_id`=`manager_id`;--在属性前面加上表格名称。`employee`.`emp_id`,防止多个表格存在相同属性--subquery 子查询
--1、找出研发部门的经理名字
SELECT `name` FROM`employee` WHERE`emp_id`=(
SELECT `manager_id`FROM `branch` WHERE `branch_name`=`研发`);
--找出一位客户销售金额超过50000的员工名字:当子查询回传结果不止一个,要用in不用=SELECT `name` FROM `employee`WHERE `emp_id` IN (SELECT `emp_id` FROM `work_with`WHERE `total_sales` > 50000);--on delete删除某一行
--on delete set null;(对应不到,设置为null) 如果删除某个资料1,其他表格的资料2用外键对应的该资料1,在其他表格中把资料2设为null,当资料2为primary key时,不能设置为null,只能为on delete cascade
--on delete cascade; (对应不到,把整笔资料删掉)如果删除某个资料1,其他表格的资料2用外键对应的该资料1,在其他表格中把资料2也删掉。--创建worh_with表格CREATE TABLE `work_with`(`emp_id` INT,`client_id` INT,`total_sales` INT,PRIMARY KEY ( `emp_id`, `client_id`),FOREIGN KEY (`emp_id`) REFERENCES `employee`(`emp_id`) ON DELETE CASCADE,FOREIGN KEY (`client_id`) REFERENCES `client`(`client_id`) ON DELETE CASCADE --primary ley同时又是foreign key不能设置为null );--创建部门表格CREATE TABLE `branch`(`branch_id` INT PRIMARY KEY,`branch_name` VARCHAR(20),`manager_id` INT,FOREIGN KEY (`manager_id`) REFERENCES `employee`(`emp_id`) ON DELETE SET NULL   #FOREIGN KEY表示外键;REFERENCES 表示外键接的表格名,再加外接的表格的primary key);DELETE FROM `employee`WHERE `emp_id`= 207;SELECT * FROM `work_with`;SELECT * FROM `branch`;UPDATE `branch`SET `manager_id`=207WHERE `branch_id`=2; INSERT INTO `employee` VALUES(207,'小绿','1995-10-09','M',51000,2,206);INSERT INTO `work_with` VALUES(207,400,'56000');

相关文章:

SQL语言1

创建数据库 CREATE DATABASE 展示数据库 SHOW DATABASE 整数 INT 有小数点的数 DECIMA(m, n) #m是有几位数&#xff0c;n是有几位小数 字符串 VARCHAR(n) &#xff08;Binary Large Object&#xff09;图片 影片 BLOB ‘YYYY-MM-DD’日期 DATA YYYY-MM-DD HH:MM:SS 记…...

PowerShell搭建vue起始项目

Windows PowerShell搭建vue起始项目 搜索PowerShell,以管理员身份运行。 复制文件夹路径 cd 到这个文件夹位置 命令行创建项目&#xff1a;vue create 项目名 这里写自己的项目名就行&#xff0c;我写的yeb vue create yeb 创建成功后是这样的 有颜色的就是选中的&#xff…...

jmeter遇到连接数据库的问题

jmeter连接mysql或者oracle简单&#xff0c;但是连接过inceptor吗&#xff1f; 上货 1、下载驱动inceptor 5.1.2.jar包 2、在添加驱动那里导入 3、在JBC request中的写法 PS:没什么可说的...

应急响应实战笔记02日志分析篇(3)

第3篇:Web日志分析 ox01 Web日志 Web访问日志记录了Web服务器接收处理请求及运行时错误等各种原始信息。通过对WEB日志进行的安全分析&#xff0c;不仅可以帮助我们定位攻击者&#xff0c;还可以帮助我们还原攻击路径&#xff0c;找到网站存在的安全漏洞并进行修复。 我们来…...

常见性能优化策略

对于经常接触高并发服务的同学来学&#xff0c;会经常涉及到性能优化&#xff0c;但是由于平时很少总结&#xff0c;内容会比较分散&#xff0c;这里简单做一些总结 1&#xff1a;空间换时间 比如一些数据的访问需要很快返回结果&#xff0c;原本在磁盘上的数据&#xff0c;需…...

【微信小程序】微信小程序开发:从入门到精通

微信小程序开发&#xff1a;从入门到精通 一、开发准备二、小程序开发流程1、注册与创建项目2、开发页面3、配置4、调试与预览5、发布与审核 随着移动互联网的普及&#xff0c;微信小程序成为了越来越多企业和个人开发者的首选。小程序是一种无需下载安装即可使用的应用&#x…...

【经验】STM32的一些细节

这两天 碰到的奇葩问题是 STM32定时器同步的问题。 我的设计本意是&#xff1a;使用定时器T3以100us的周期来定时发送命令给 FPGA。由于编码器出结果的最长时间为51us。因此&#xff0c;希望PWM中断要滞后于T3 约60us 。 调试过程&#xff1a;分别在T3和PWM中断中置IO1&#…...

ubuntu22.04安装部署03: 设置root密码

一、前言 ubuntu22.04 安装完成以后&#xff0c;默认root用户是没有设置密码的&#xff0c;需要手动设置。具体的设置过程如下文内容所示&#xff1a; 相关文件&#xff1a; 《ubuntu22.04装部署01&#xff1a;禁用内核更新》 《ubuntu22.04装部署02&#xff1a;禁用显卡更…...

【lesson56】生产者消费者模型

文章目录 学习生产者消费者模型过程中要回答的两个问题生产者消费者模型的概念基于阻塞队列的生产者消费者模型编码实现Common.hLockGuard.hppCondtion.hppBlockQueue.hppTask.hppConProd.cc 学习生产者消费者模型过程中要回答的两个问题 1.条件变量是在条件满足的时候&#x…...

MySQL5.7升级到MySQL8.0的最佳实践分享

一、前言 事出必有因&#xff0c;在这个月的某个项目中&#xff0c;我们面临了一项重要任务&#xff0c;即每年一次的等保测评整改。这次测评的重点是Mysql的一些高危漏洞&#xff0c;客户要求我们无论如何必须解决这些漏洞。尽管我们感到无奈&#xff0c;但为了满足客户的要求…...

Rust 数据结构与算法:5栈:用栈实现前缀、中缀、后缀表达式

3、前缀、中缀和后缀表达式 计算机是从左到右处理数据的&#xff0c;类似(A (B * C))这样的完全括号表达式&#xff0c;计算机如何跳到内部括号计算乘法&#xff0c;然后跳到外部括号计算加法呢&#xff1f; 一种直观的方法是将运算符移到操作数外&#xff0c;分离运算符和操…...

作业day6

数据库 sqlite3 sq.db 如果sq.db存在则直接打开sq.db数据库&#xff0c;如果不存在则先创建再打开; ​ 系统命令 需要以 . 开头&#xff0c;不需要以 ; 结尾 .quit 退出数据库 .exit 退出数据库 .help 显示帮助信息&#xff0c;获取所有系统命令; ​ .table 查看当前数据…...

前方预警!2024年七大网络安全威胁

新颖创新技术的兴起和迅速采用已极大地改变了各行各业的全球网络安全和合规格局&#xff0c;比如生成式人工智能、无代码应用程序、自动化和物联网等新技术。 网络犯罪分子正转而采用新的技术、工具和软件来发动攻击&#xff0c;并造成更大的破坏。因此&#xff0c;《2023年网…...

绿色化 数据库 MongoDB 和 mysql 安装

绿色化 数据库 MongoDB 和 mysql 安装 【1.1】 前言 为什么要绿色化 安装呢&#xff1f;因为系统老升级&#xff0c;老重装&#xff01;&#xff01;也方便了解下数据库配置和库在那 绿色软件喜欢一般放在 D盘tools目录里 D:\tools\ 数据库 MongoDB D:\tools\MongoDB 数…...

npm install 一直卡着不动如何解决

目录 方式一&#xff1a;方式二&#xff1a; 方式一&#xff1a; npm cache clean --force npm config set registry https://registry.npmmirror.com npm install下面是简单的解释&#xff1a; &#x1f340;1、强制清理 npm 缓存 npm cache clean --force&#x1f340;2、设…...

电路设计(15)——篮球赛24秒违例倒计时报警器的proteus仿真

1.设计要求 设计、制作一个篮球赛24秒违例倒计时报警器。要求&#xff1a; &#xff08;1&#xff09;具有倒计时功能。可完整实现从“24”秒开始依序倒计时并显示倒计时过程&#xff0c;显示时间间隔为1秒。 &#xff08;2&#xff09;具有消隐功能。当“24”秒倒计时…...

golang 集成sentry:http.Client

http.Client 是 Go 标准库 HTTP 客户端实现&#xff0c; sentry-go也没有这个组件&#xff0c;所以需要自己实现。 我们只需要对 http.Transport 进行包装即可&#xff0c; 完整代码如下 package mainimport ("bytes""fmt""io""log"&…...

设计链表(不难,代码稍微多一点)

设计链表 在链表类中实现这些功能&#xff1a; get(index)&#xff1a;获取链表中第 index 个节点的值。如果索引无效&#xff0c;则返回-1。addAtHead(val)&#xff1a;在链表的第一个元素之前添加一个值为 val 的节点。插入后&#xff0c;新节点将成为链表的第一个节点。ad…...

[GXYCTF2019]禁止套娃

进来发现只有这句话&#xff0c;习惯性访问一下flag.php&#xff0c;发现不是404&#xff0c;那就证明flag就在这了&#xff0c;接下来要想办法拿到flag.php的源码。 这道题是.git文件泄露网页源码&#xff0c;githack拿到index.php源码 这里观察到多次判断&#xff0c;首先要…...

ubuntu下如何查看显卡及显卡驱动

ubuntu下如何查看显卡及显卡驱动 使用nvidia-smi 工具查看 查看显卡型号nvida-smi -L $ nvidia-smi -L GPU 0: NVIDIA GeForce RTX 3050 4GB Laptop GPU (UUID: GPU-4cf7b7cb-f103-bf56-2d59-304f8996e28c)当然直接使用nvida-smi 命令可以查看更多信息 $ nvidia-smi Mon Fe…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法

树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作&#xff0c;无需更改相机配置。但是&#xff0c;一…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...