数据库系统概论 | MySQL | 数据定义 | 单表查询 | 嵌套查询 | 连接查询 | 带有谓词的查询

数据定义

模式的定义与删除

定义模式与删除模式:

CREATE SCHEMA S_C_SC;
DROP SCHEMA S_C_SC;

进入模式:

USE S_C_SC;

建立学生表:

CREATE TABLE Student
(Sno CHAR(8) PRIMARY KEY,
Sname VARCHAR(20) UNIQUE,
Ssex CHAR(6),
Sbirthdate Date,
Smajor VARCHAR(40)
);

CHAR(8):长度为8的定长字符串

VARCHAR(20):最大长度为20的变长字符串

DATE:日期,包含年、月、日

PRIMARY KEY:列级完整性约束条件,Sno是主码

UNIQUE:Sname取唯一值

建立课程表:

CREATE TABLE Course
(Cno CHAR(5) PRIMARY KEY,
Cname VARCHAR(40) NOT NULL,
Credit SMALLINT,
Cpno CHAR(5),
FOREIGN KEY (Cpno) REFERENCES Course (Cno)
);

表级完整性约束,Cpno是外码,被参照表是Course,被参照列是Cno

SMALLINT:短整数,2字节

建立选课表:

CREATE TABLE SC
(Sno CHAR(8),
Cno CHAR(5),
Grade SMALLINT,
Semester CHAR(5),
Teachingclass CHAR(8),
PRIMARY KEY (Sno,Cno),
FOREIGN KEY (Sno) REFERENCES Student (Sno),
FOREIGN KEY (Cno) REFERENCES Course (Cno)
);

修改与删除基本表

向Student表增加邮箱地址列Semail,数据类型为字符型:

ALTER TABLE Student ADD Semail VARCHAR(30);

将Student表的出生日期的数据类型由DATE改为字符型:

ALTER TABLE Student MODIFY COLUMN Sbirthdate VARCHAR(20);

增加课程名称必须取唯一值的约束条件:

ALTER TABLE Course ADD UNIQUE (Cname);

删除Student表,选择CASCADE:

DROP TABLE Student CASCADE;

执行CASCADE的删除语句后,不仅表中的数据和此表的定义被删除,而且此表上建立的索引、约束、触发器等对象也被删除。

索引的建立与删除

对Student、Course和SC三个表建立索引,其中Student表按学生姓名升序建唯一索引,Course表按课程名升序建唯一索引,SC表按学号升序和课程号降序建唯一索引(即先按照学号升序,对同一个学号再按课程号降序:

CREATE UNIQUE INDEX Idx_StuSname ON Student (Sname);
CREATE UNIQUE INDEX Idx_CouCname ON Course (Cname);
CREATE UNIQUE INDEX Idx_SCCno ON SC(Sno ASC, Cno DESC);

将SC表的Idx_SCCno索引名改为Idx_SCSnoCno:

ALTER TABLE SC RENAME INDEX Idx_SCCno TO Idx_SCSnoCno;

删除Student表的Idx_StuSname索引:

DROP INDEX Idx_StuSname ON Student;

数据查询

表数据插入

/* student表插入数据*/           
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180001','李勇','男','2000-3-8','信息安全');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180002','刘晨','女','1999-9-1','计算机科学与技术');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180003','王敏','女','2001-8-1','计算机科学与技术');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180004','张立','男','2000-1-8','计算机科学与技术');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180005','陈新奇','男','2000-11-1','信息管理与信息系统');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180006','赵明','男','2000-6-12','数据科学与大数据技术');
INSERT INTO Student(Sno,Sname,ssex,Sbirthdate,Smajor)VALUES ('20180007','王佳佳','女','2001-12-7','数据科学与大数据技术');/*course表插入数据*/
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81001','程序设计基础与C语言',4,null);
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81002','数据结构',4,'81001');
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81003','数据库系统概论',4,'81002');
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81004','信息系统概论',4,'81003');
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81005','操作系统',4,'81001');
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81006','python语言',3,'81002');
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81007','离散数学',4,null);
INSERT INTO course(cno,cname,Credit,cpno)VALUES ('81008','大数据技术概论',4,'81003');/*sc表插入数据*/
insert into sc values('20180001','81001',85,'20192','81001-01');
insert into sc values('20180001','81002',96,'20201','81002-01');
insert into sc values('20180001','81003',87,'20202','81003-01');
insert into sc values('20180002','81001',80,'20192','81001-02');
insert into sc values('20180002','81002',98,'20201','81002-01');
insert into sc values('20180002','81003',71,'20202','81003-02');
insert into sc values('20180003','81001',81,'20192','81001-01');
insert into sc values('20180003','81002',76,'20201','81002-02');
insert into sc values('20180004','81001',56,'20192','81001-02');
insert into sc values('20180004','81002',97,'20201','81002-02');
insert into sc values('20180005','81003',68,'20202','81003-01');

单表查询

查询全体学生的详细记录:

SELECT * FROM Student;
image-20240702170212942
图1-1

查全体学生的姓名及其年龄:

SELECT Sname, (EXTRACT(YEAR FROM CURRENT_DATE)-EXTRACT(YEAR FROM Sbirthdate)) "年龄" FROM Student;
image-20240702170445748
图1-2

查询全体学生的姓名、出生日期和主修专业:

SELECT Sname, "Date of Birth:",Sbirthdate, Smajor FROM Student;
image-20240702170848540
图1-3

查询表中的若干元组

查询选修了课程的学生学号:

SELECT ALL Sno FROM SC;
SELECT DISTINCT Sno FROM SC;
image-20240702171133136
图1-4

查询主修计算机科学与技术专业全体学生的姓名:

SELECT Sname FROM Student WHERE Smajor = '计算机科学与技术';
image-20240702171323761
图1-5

查询所有2000年后(包括2000年)出生的学生姓名及其性别:

SELECT Sname FROM Student WHERE EXTRACT(YEAR FROM Sbirthdate) >= 2000;

函数extract(year from Sbirthdate)从出生日期中抽取出年份

image-20240702171431113
图1-6

查询考试成绩不及格的学生的学号:

SELECT Sno FROM SC WHERE Grade < 60;
image-20240702190500348
图1-6

查询年龄在20~23岁(包括20岁和23岁)之间的学生的学生的姓名、出生年月和主修专业:

SELECT Sname,Sbirthdate,Smajor FROM Student WHERE EXTRACT(YEAR FROM CURRENT_DATE)-EXTRACT(YEAR FROM Sbirthdate) NOT BETWEEN 20 AND 23;
image-20240702191117174
图1-7

查询计算机科学与技术专业和信息安全专业学生的姓名和性别:

SELECT Sname,Ssex FROM Student WHERE Smajor IN ('计算机科学与技术', '信息安全');
image-20240702191623651
图1-8

如果查询一个专业,也要加括号:

SELECT Sname,Ssex FROM Student WHERE Smajor IN ('信息安全');

查询学号为20180003的学生的详细情况;

SELECT * FROM Student WHERE Sno LIKE '20180003';

image-20240702191650800

图1-9

查询所有姓刘学生的姓名、学号和性别:

SELECT Sname,Sno,Ssex FROM Student WHERE Sname LIKE '刘%';

image-20240702191821484

图1-10

查询2018级学生的学号和姓名;

SELECT Sno,Sname FROM Student WHERE Sno LIKE '2018%';

image-20240702192014914

图1-11

查询课程号为81开头,最后一位是6的课程名称和课程号:

SELECT Cname,Cno FROM Course WHERE Cno LIKE '81__6';

由于课程号是定长的CHAR(5),因此在这种开头和结尾限定的查询中,要用_ _来表示。

查询以“DB_”开头,且倒数第三个字符为i的课程的详细情况:

SELECT * FROM Course WHERE Cname LIKE 'DB\\_%i__'  ESCAPE '\\';

在上面这个示例中,DB_的下划线,需要使用\\换码字符将通配符转义为普通字符,并且,倒数第三个字符为i,那么i后面要接两个下划线,由于课程名称是变长字符型,所以中间用%去匹配。

某些学生选修课程后没有参加考试,有选课记录,但没有考试成绩。查询缺少成绩的学生的学号和相应的课程号:

SELECT Sno,Cno FROM SC WHERE Grade IS NULL;

IS不能用=代替

查询主修计算机科学与技术专业2000年(包括2000年)以后出生的学生学号、姓名和性别:

SELECT Sno,Sname,Ssex FROM Student WHERE Smajor IN('计算机科学与技术') AND EXTRACT(YEAR FROM Sbirthdate)>=2000;

image-20240702194239051

图1-12

ORDER BY子句

可以按一个或多个属性列排序升序(ASC)降序(DESC)排列,默认值为升序.对于空值,排序时显示的次序由具体系统实现决定

查询全体学生选修课程情况,查询结果先按照课程号升序排列,同一课程中按成绩降序排列:

SELECT * FROM SC ORDER BY Cno ,Grade DESC;
image-20240702194615852
图1-13

聚集函数

查询选修了课程的学生人数:

SELECT COUNT(DISTINCT Sno) FROM SC;

image-20240702194848216

图1-14

计算选修81001号课程的学生平均成绩:

SELECT AVG(Grade) FROM SC WHERE Cno LIKE '81001';

image-20240702195434009

图1-15

查询选修1号课程的学生最高分数:

SELECT MAX(Grade) FROM SC WHERE Cno LIKE '81001';

image-20240702195600539

图1-16

查询学号为20180003学生选修课程的总学分数:

SELECT SUM(Credit) FROM SC,Course WHERE Sno LIKE '20180001' AND SC.Cno=Course.Cno;

image-20240702200140998

图1-17

GROUP BY子句

按指定的一列或多列值分组,值相等的为一组

如果未对查询结果分组,聚集函数将作用于整个查询结果

分组后,聚集函数将作用于每一个组

求各个课程号及选修该课程的人数:

SELECT Cno,COUNT(Sno) FROM SC GROUP BY Cno;

image-20240702200550708

图1-18

查询2019年第2学期选修了10门以上课程的学生学号:

SELECT Sno FROM SC WHERE Semester LIKE '20192' GROUP BY Sno HAVING COUNT(*) > 10;

先求出2019年第2学期选课的所有学生,用GROUP BY子句按Sno进行分组,再用聚集函数COUNT对每一组计数

查询平均成绩大于等于90分的学生学号和平均成绩:

SELECT Sno, AVG(Grade) FROM SC GROUP BY Sno HAVING AVG(Grade) >= 90;

HAVING短语与WHERE子句的区别:

WHERE子句作用于基表或视图,从中选择满足条件的元组

HAVING短语作用于组,从中选择满足条件的组

LIMIT子句

用于限制SELECT语句查询结果的(元组)数量

查询选修了数据库系统概论课程的成绩排名前10名的学生学号和成绩:

SELECT Sno, Grade FROM Course, SC WHERE Course.Cname LIKE '数据库系统概论' AND Course.Cno = SC.Cno ORDER BY SC.Grade DESC LIMIT 10;

image-20240702202851124

图1-19

查询平均成绩排名在3-5名的学生学号和平均成绩:

SELECT Sno, AVG(Grade) FROM SC GROUP BY Sno ORDER BY AVG(Grade) DESC LIMIT 5 OFFSET 2;

由于要计算平均成绩所以要用GROUP BY进行分组,并用ORDER BY进行降序,最后用LIMIT取前五名,丢弃前三名,结果就是3~5名。

连接查询

用于同时涉及两个以上的表的查询

等值与非等值连接查询

查询每个学生及其选修课程的情况:

SELECT Student.* , SC.* FROM Student,SC WHERE Student.Sno=SC.Sno;

image-20240702210115951

图1-20

自然连接查询

若在等值连接中把目标列中重复的属性列去掉则为自然连接

查询每个学生的学号、姓名、性别、出生日期、主修专业及该学生选修课程的课程号与成绩:

SELECT Student.Sno,Sname,Sbirthdate,Smajor,Cno,Grade FROM Student,SC WHERE Student.Sno = SC.Sno;

image-20240702210407471

图1-21

Sname,Ssex,Sbirthdate,Smajor,Cno和Grade属性列在Student表与SC表中唯一,引用时可以去掉表名前缀

Sno在两个表都出现,因此SELECT子句和WHERE子句在引用时必须加上表名前缀

复合条件连接查询

查询选修81002号课程且成绩在90分以上的所有学生的学号和姓名:

SELECT Student.Sno,Sname FROM Student,SC WHERE Student.Sno = SC.Sno AND SC.Cno LIKE '81002' AND SC.Grade > 90;

image-20240702210807241

图1-22

自身连接查询

自身连接:一个表与其自己进行连接

需要给表起别名以示区别

由于所有属性名都是同名属性,因此必须使用别名前缀

查询每一门课的间接先修课(即先修课的先修课):

SELECT FIRST.Cno,SECOND.Cpno FROM Course FIRST,Course SECOND WHERE FIRST.Cpno=SECOND.Cno AND SECOND.Cpno IS NOT NULL;

image-20240702211741474

图1-23

外连接查询

想以Student表为主体列出每个学生的基本情况及其选课情况,若某个学生没有选课,则只输出其基本情况的数据,而把选课信息填为空值NULL:

SELECT Student.Sno,Sname,Ssex,Sbirthdate,Smajor,Cno,Grade FROM Student LEFT OUTER JOIN SC ON(Student.Sno=SC.Sno);

image-20240702212024700

图1-24

多表连接查询

查询每个学生的学号、姓名、选修的课程名及成绩:

SELECT Student.Sno,Sname,Cname,Grade FROM Student,Course,SC WHERE Student.Sno=SC.Sno AND Course.Cno=SC.Cno;

image-20240702212605387

图1-25

嵌套查询

一个SELECT-FROM-WHERE语句称为一个查询块

将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询

上层的查询块称为外层查询或父查询

下层的查询块称为内层查询或子查询

SQL语言允许多层嵌套查询即一个子查询中还可以嵌套其他

子查询子查询的限制SELECT语句不能使用ORDER BY子句

带有IN谓词的子查询

查询与“刘晨”在同一个主修专业的学生学号、姓名和主修专业:

SELECT Student.Sno,Sname,Smajor FROM Student WHERE Smajor IN (SELECT Smajor FROM Student WHERE Sname LIKE '刘晨');

image-20240702213149822

图1-26

这个示例中的IN换成LIKE也可以

查询选修了课程名为“数据结构”的学生的学号和姓名:

SELECT Sname FROM Student WHERE Sno IN (SELECT SC.Sno FROM SC WHERE Cno IN (SELECT Cno FROM Course WHERE Cname LIKE '数据结构'));

image-20240702214912836

图1-27

带有比较运算符的子查询

找出每个学生超过他选修课程平均成绩的课程号:

SELECT Sno,Cno FROM SC X WHERE Grade >= (SELECT AVG(Grade)FROM SC Y WHERE X.Sno=Y.Sno);

别名允许在同一个查询中多次引用同一个表

image-20240702215709877

图1-28

别写成下面这种代码了:

SELECT Sno,Cno FROM SC WHERE Grade >= (SELECT AVG(Grade)FROM SC);

这是针对整个表进行计算和比较,因此它返回的是成绩高于或等于整个表所有课程的平均成绩的课程

带有ANY(SOME)或ALL谓词的子查询

>ANY 大于子查询结果中的某个值

>ALL 大于子查询结果中的所有值

<ANY 小于子查询结果中的某个值

<ALL 小于子查询结果中的所有值

≥ \ge ANY 大于等于子查询结果中的某个值

≥ \ge ALL 大于等于子查询结果中的所有值

≤ \le ANY 小于等于子查询结果中的某个值

≤ \le ALL 小于等于子查询结果中的所有值

=ANY 等于子查询结果中的某个值

=ALL 等于子查询结果中的所有值(通常没有实际意义)

!=ANY 不等于子查询结果中的某个值

!=ALL 不等于子查询结果中的任何一个值

查询非计算机科学技术专业中比计算机科学技术专业任意一个学生年龄小(出生日期晚)的学生的姓名、出生日期和主修专业:

SELECT Sname,Sbirthdate, Smajor FROM Student WHERE Sbirthdate > ANY (SELECT Sbirthdate FROM Student WHERE Smajor LIKE '计算机科学与技术') AND Smajor != '计算机科学与技术';

image-20240702223402598

图1-29

查询非计算机科学与技术专业中比计算机科学与技术专业所有学生年龄都小(出生日期晚)的学生的姓名及出生日期:

SELECT Sname,Sbirthdate FROM Student WHERE Sbirthdate > ALL (SELECT Sbirthdate FROM Student WHERE Smajor = '计算机科学与技术') AND Smajor != '计算机科学与技术';

image-20240703145744224

图1-30

这里不要写成这样:

SELECT Sname,Sbirthdate FROM Student WHERE Sbirthdate > ALL (SELECT Sbirthdate FROM Student WHERE Smajor = '计算机科学与技术') AND Smajor NOT IN '计算机科学与技术';

NOT IN操作符需要一个列表,在这里传递的是一个单独的字符串

带有EXISTS谓词的子查询

带有EXISTS谓词的子查询不返回任何数据,只产生逻辑真值“true”或逻辑假值“false”

若内层查询结果非空,则外层的WHERE子句返回真值

若内层查询结果为空,则外层的WHERE子句返回假值

由EXISTS引出的子查询,其目标列表达式通常都用*,因为带EXISTS的子查询只返回真值或假值,给出列名无实际意义

查询没有选修81001号课程的学生姓名:

SELECT Sname
FROM Student
WHERE NOT EXISTS
(SELECT *
FROM SC
WHERE Sno=Student.Sno AND Cno='81001');

image-20240703145732183

图1-31

查询选修了全部课程的学生姓名:

SELECT Sname
FROM Student
WHERE NOT EXISTS
(SELECT *FROM CourseWHERE NOT EXISTS(SELECT *FROM SCWHERE Sno = Student.Sno AND Cno = Course.Cno)
);

查询至少选修了学生20180002选修的全部课程的学生的学号:

SELECT Sno
FROM Student
WHERE NOT EXISTS
(SELECT * /* 这是一个相关子查询 */FROM SC SCX /* 父查询和子查询均引用了SC表 */WHERE SCX.Sno = '20180002'AND NOT EXISTS(SELECT *FROM SC SCY /* 用别名SCX、SCY将父查询 */WHERE SCY.Sno = Student.SnoAND SCY.Cno = SCX.Cno /* 与子查询中的SC表区分开 */)
);

image-20240703145718464

图1-32

集合查询

查询计算机科学与技术专业的学生及年龄不大于19岁(包括等于19岁)的学生:

UNION:将多个查询结果合并起来时,系统自动去掉重复元组

UNION ALL:将多个查询结果合并起来时,保留重复元组

SELECT * 
FROM Student 
WHERE Smajor = '计算机科学与技术'
UNION
SELECT * 
FROM Student 
WHERE (extract(year from current_date) - extract(year from Sbirthdate)) <= 19;

image-20240703145706572

图1-33

查询计算机科学与技术专业的学生与年龄不大于19岁的学生的交集:

SELECT *
FROM Student s1
INNER JOIN (SELECT *FROM StudentWHERE (EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM Sbirthdate)) <= 19
) s2 ON s1.Sno = s2.Sno
WHERE s1.Smajor = '计算机科学与技术';

= Student.Sno
AND SCY.Cno = SCX.Cno /* 与子查询中的SC表区分开 */
)
);


[外链图片转存中...(img-04xHjuUc-1719990528459)]#### 图1-32## 集合查询查询计算机科学与技术专业的学生及年龄不大于19岁(包括等于19岁)的学生:UNION:将多个查询结果合并起来时,系统自动去掉重复元组 UNION ALL:将多个查询结果合并起来时,保留重复元组```sql
SELECT * 
FROM Student 
WHERE Smajor = '计算机科学与技术'
UNION
SELECT * 
FROM Student 
WHERE (extract(year from current_date) - extract(year from Sbirthdate)) <= 19;

[外链图片转存中…(img-T6d6NhOy-1719990528460)]

图1-33

查询计算机科学与技术专业的学生与年龄不大于19岁的学生的交集:

SELECT *
FROM Student s1
INNER JOIN (SELECT *FROM StudentWHERE (EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM Sbirthdate)) <= 19
) s2 ON s1.Sno = s2.Sno
WHERE s1.Smajor = '计算机科学与技术';

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

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

相关文章

【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则

大家好&#xff0c;我是全栈小5&#xff0c;欢迎来到《小5讲堂》。 这是《Sql Server》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解。 温馨提示&#xff1a;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 目录 前言1、无法链接…

北斗防爆手持终端在化工厂的安全性能分析

北斗防爆手持终端在化工厂中的应用显著提升了安全性能&#xff0c;其卓越的防爆设计、高精度定位与监控功能、实时通信能力以及多功能集成特性&#xff0c;共同构筑了化工厂安全生产的坚实防线&#xff0c;确保了巡检人员与设备在复杂环境下的安全作业与高效管理。 北斗防爆手持…

AE-图层

目录 图层初体验 项目、合成和图层的关系 图层的通用参数 锚点&#xff08;快捷键A&#xff09; 位置&#xff08;快捷键P&#xff09; 缩放&#xff08;快捷键S&#xff09; 旋转&#xff08;快捷键R&#xff09; 不透明度&#xff08;快捷键T&#xff09; 向后平移锚…

实时监测、智能预警:电缆光纤测温系统|原理、应用与前景

实时监测、智能预警&#xff1a;电缆光纤测温系统|原理、应用与前景 电缆光纤测温系统&#xff0c;作为现代电力系统中不可或缺的一部分&#xff0c;以其独特的优势在电缆安全监控领域发挥着日益重要的作用。该系统利用光纤传感技术&#xff0c;实时监测电缆的运行温度&#x…

网站高性能架构设计——高性能缓存架构

从公众号转载&#xff0c;关注微信公众号掌握更多技术动态 --------------------------------------------------------------- 一、缓存基础 1.缓存简介 缓存提升性能的幅度&#xff0c;不只取决于存储介质的速度&#xff0c;还取决于缓存命中率。为了提高命中 率&#xff0c…

【博主推荐】HTML5好看的酷酷的个人简历、个人主页、个人网站源码

文章目录 1.设计来源1.1 主界面1.2 关于我界面1.3 我的项目界面1.4 我的经验界面1.5 我的技能界面1.6 我的文章界面1.7 联系我界面 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板&#xff0c;程序开发&#xff0c;在线开发&#xff0c;在线沟通 作者&#xff1a;xcLeig…

智能猫砂盆怎么买才不踩雷?2024热门的三款智能猫砂盆分享!

上班外出来不及铲屎怎么办&#xff1f;那当然是入手一个智能猫砂盆啦。实不相瞒&#xff0c;以前我也是被手动铲屎长期折磨的可怜铲屎官&#xff0c;但上班出差哪有空一直盯着猫砂盆看呢&#xff1f;索性后面一不做二不休直接购入了智能猫砂盆。如果你也想将家里的普通猫砂盆换…

如何让 3D 数字孪生场景闪闪发光

今日图扑软件功能分享&#xff1a;我们将探讨 HT 系统如何通过分组管理灯光、裁切体和流光&#xff0c;以提高场景光影效果的精准度和整体可控性。 HT 中的灯光、裁切体、流光是会影响它所在区域一定范围内的其他节点的表现&#xff0c;如 场景中有个 A 灯光&#xff0c;默认情…

阿里云登陆Centos7

用自己电脑登陆Centos7太麻烦了&#xff0c;还要自己弄个虚拟机&#xff0c;一个电脑里面既有WIN又有LINUX&#xff0c;索性直接买个阿里云服务器&#xff0c;来学习Centos7。 购买 我是新用户&#xff0c;可以试用3个月&#xff0c;先用个3个月再说哈哈哈。 一系列操作之后…

电竞玩家的云端盛宴!四大云电脑平台:ToDesk、顺网云、青椒云、极云普惠云实测大比拼

本文目录 一、云电脑概念及市场需求二、云电竞性能测试2.1 ToDesk云电脑2.2 顺网云2.3 青椒云2.4 极云普惠云电脑 三、四大云电脑平台综合配置对比3.1 CPU处理器3.2 GPU显卡3.3 内存 四、总结 一、云电脑概念及市场需求 在数字化时代的推动下&#xff0c;云计算技术日益成熟&a…

关于嵌入式系统中的LED控制程序的一篇爽文

嵌入式系统中的LED控制程序 在嵌入式系统中控制LED是一个很常见的任务&#xff0c;可以用于指示状态、显示信息等。我们将使用C语言编写一个简单的LED控制程序&#xff0c;该程序将控制一个虚拟的LED&#xff0c;但可以根据需要将其扩展到实际的硬件上。 准备工作 在开始之前…

2024QS世界大学学科排名(各学科详细)

2024QS全球高校学科排名附榜单&#xff1a; 人文与艺术相关学科全球Top10 社会科学与管理相关学科全球Top10 自然科学相关学科全球Top10 工程与技术相关学科全球Top10 生命科学与医学相关学科全球Top10

Flutter 是如何实现的 ?

Flutter 是由 Google 开发的一个开源 UI 软件开发工具包&#xff0c;用于构建跨平台的应用程序。Flutter 的核心理念是提供一个高度可定制、快速和现代的 UI 框架&#xff0c;它允许开发者使用一套代码库构建 Android、iOS、Web 和桌面应用程序。以下是 Flutter 的一些关键实现…

【基于R语言群体遗传学】-14-种群起源的相对似然

我们可以将预测的基因型比例视为在种群中看到一组特定等位基因的概率。如果种群在等位基因频率上存在差异&#xff0c;我们可以使用基因型来推断个体起源于每个种群的相对可能性。大家可以先看一下之前的博客&#xff1a;群体遗传学_tRNA做科研的博客-CSDN博客 种群起源的相对似…

Python OpenCV 教学取得视频资讯

这篇教学会介绍使用OpenCV&#xff0c;取得影像的长宽尺寸、以及读取影像中某些像素的颜色数值。 因为程式中的OpenCV 会需要使用镜头或GPU&#xff0c;所以请使用本机环境( 参考&#xff1a;使用Python 虚拟环境) 或使用Anaconda Jupyter 进行实作( 参考&#xff1a;使用Anaco…

基于Python的51job招聘数据采集与可视化项目实践

项目背景与目标 在当今竞争激烈的就业市场中&#xff0c;深入分析招聘信息对于求职者和企业都具有重要意义。基于Python的51job招聘数据采集与可视化项目旨在通过自动化手段高效获取大量招聘信息&#xff0c;并对这些数据进行深度分析和展示。 51job作为中国领先的招聘网站&…

RockyLinux9上安装Nacos2.3.0(非Docker安装)

RockyLinux9上安装Nacos2.3.0 说明什么是Nacos下载并安装创建一个nacos-conf数据库修改application.properties文件 启动访问网址查看是否成功 开启访问鉴权 说明 本文采用的是&#xff1a;安装包安装&#xff0c;非Docker安装&#xff0c;系统采用的Rocky Linux9.4。   当前…

C++ 【 Open3D 】 读取、可视化并保存点云

一、读取常见点云 #include <iostream> #include <Open3D/Open3D.h>int main(int argc, char* argv[]) {std::string fileName("hand.pcd");auto cloud_ptr std::make_shared<open3d::geometry::PointCloud>();if (open3d::io::ReadPointCloud(f…

警钟!电池储能安全事故频发!物联网技术如何加强储能安全排查?

在新能源时代背景下&#xff0c;储能系统作为能源转型的关键支撑技术&#xff0c;其安全问题日益凸显&#xff0c;尤其是近期海外电池项目连续发生的事故&#xff0c;为全球储能行业敲响了警钟。面对这一挑战&#xff0c;物联网技术以其强大的数据采集、智能分析与远程监控能力…

Python基础知识——(002)

文章目录 P8——7. input函数的使用 基本的输入函数input P9——8. Python中的注释 P10——9. Python中的缩进与本章总结 本章总结 P11——10. 章节习题 P8——7. input函数的使用 基本的输入函数input 语法结构&#xff1a; x input(提示文字) 注意事项&#xff1a;无论输…