Mysql -- 基礎

SQL

SQL通用語法:

SQL分類:

DDL:

數據庫操作

查詢:

SHOW DATABASES;

創建:

CREATE DATABASE[IF NOT EXISTS] 數據庫名 [DEFAULT CHARSET字符集] [COLLATE 排序規則];

刪除:

DROP DATABASE [IF EXISTS] 數據庫名;

使用:

USE 數據庫名;
DDL - 表操作 - 查詢:

查詢當前數據庫所有表

SHOW TABLES;

查詢表結構:

DESC 表名

查詢指定表的建表語句:

SHOW CREATE TABLE 表名;

DDL - 表操作 - 創建:

DDL - 表操作 - 數據類型

create table emp(-> id int comment '編號',-> workno varchar(10) comment '員工工號',-> name varchar(10) comment '姓名',-> gender char(1) comment '性別',-> age tinyint unsigned comment '年齡',-> idcard char(18) comment '身份證號',-> entrydate date comment '入職時間'-> ) comment '員工表';

DDL - 表操作 - 修改

添加字段:

ALTER TABLE 表名 ADD 字段名 類型(長度)[COMMENT 注釋][約束];

修改數據類型:

ALTER TABLE MODIFY 字段名 新數據類型(長度)

修改字段名和字段類型

ALTER TABLE 表名 CHANGE 舊字段名 新字段名 類型(長度)[COMMENT 注釋]

刪除字段:

ALTER 表名 DROP 字段名;

修改表名:

ALTER TABLE 表名 RENAME TO 新表名;
DDL - 表操作 - 刪除

刪除表

DROP TABLE [IF EXISTS] 表名

刪除指定表,并重新創建該表

TRUNCATE TABLE 表名;

相當于清空

DML:

DML - 添加數據

給指定字段添加數據

INSERT INTO 表名(字段1,字段2)VALUES(值1,值2);

給全部字段添加數據

INSERT INTO 表名 VALUES(值1,值2);

批量添加數據

INSERT INTO 表名(字段1,字段2) VALUES (值1,值2),(值1,值2),(值1,值2);
INSERT INTO 表名 VALUES(值1,值2),(值1,值2);

注:

  • 插入數據時,指定的字段順序需要與值的順序是一一對應的
  • 字符串和日期數據應該在包含在引號中
  • 插入的數據應該在范圍內
DML - 修改數據
UPDATE 表名 SET 字段名1 = 值1,字段名2 = 值2,[WHERE ...]

注:修改語句的條件可以有,也可以沒有,如果么有條件,則會修改整張表的所有數據。

DML - 刪除數據
DELETE FROM 表名 [WHERE 條件];

DQL:

語法:

DQL - 基本查詢:

查詢多個字段

SELECT 字段1,字段2,字段3 ... FROM 表名;

SELECT * FROM 表名

設置別名

SELECT 字段1 [AS 別名1],字段2 [AS 別名2]... FROM 表名;

去除重復記錄

SELECT DISTINCT 字段列表 FROM 表名;

DQL - 條件查詢:

語法:

SELECT 字段列表 FROM 表名 WHERE 條件列表;


-- --------------------------------------------------- > 查詢需求 <------------------------------------------------ 基本查詢
-- 1. 查詢指定字段 name workno age 返回
select name,workno,age from emp;-- 2. 查詢所有字段返回
select * from emp;-- 3. 查詢所有員工的工作地址,起別名
select workaddress as '工作地址' from emp;-- 4. 查詢公司員工的上班地址(不重復)
select distinct  workaddress '工作地址' from emp;-- 條件查詢
-- A. 查詢年齡等于 88 的員工
select * from emp where age = 88;-- B. 查詢年齡小于 20 的員工信息
select * from emp where age <= 20;-- D. 查詢沒有身份證號的員工信息
select * from emp where idcard is null;-- E. 查詢有身份證號的員工信息
select * from emp where idcard is not null;-- F. 查詢年齡不等于 88 的員工信息
select * from emp where age <> 88;-- G. 查詢年齡在15歲(包含) 到 20歲(包含)之間的員工信息
select * from emp where age >=15 && age<=20;
select * from emp where age >=15 AND age<=20;
select * from emp where age between 15 and 20; -- between 跟最小值-- H. 查詢性別為 女 且年齡小于 25歲的員工信息
select  * from emp where gender = '女' and age <25;-- I. 查詢年齡等于18 或 20 或 40 的員工信息
select * from emp where age = 18 || age = 20 || age = 40 ;
select * from emp where  age in(18,20,40);-- J. 查詢姓名為兩個字的員工信息 _ %
select * from emp where name like '__';-- K. 查詢身份證號最后一位是X的員工信息
select * from emp where idcard  like '%X';

聚合函數:

分組查詢:

排序查詢:

分頁查詢:

DQL -聚合函數:

常見聚合函數

語法:

SELECT 聚合函數(字段列表) FROM 表名;

注:null值不參與所有聚合函數的運算

-- ------------------------------------> 聚合函數--
-- A. 統計該企業員工數量
select count(*) from emp;
select count(idcard) from emp;-- B. 統計該企業員工的平均年齡
select avg(age) from emp;-- C. 統計該企業員工的最大年齡
select max(age) from emp;-- D. 統計該企業員工的最小年齡
select min(age) from emp;-- E. 統計西安地區員工的年齡之和
select sum(age) from emp where workaddress = '西安';
DQL -分組函數:
SELECT 字段列表 FROM 表名 [WHERE 條件] GROUP BY 分組字段名 [HAVING 分組后過濾條件];

where 和 having區別

  • 執行時機不同:where是分組之前進行過濾,不滿足where條件,不參與分組;而having是分組之后對結果進行過濾。
  • 判斷條件不同:where不能對聚合函數進行判斷,而having可以
-- 分組查詢
-- A. 根據性別分組 , 統計男性員工 和 女性員工的數量
select gender,count(*) from emp group by gender ;
-- B. 根據性別分組 , 統計男性員工 和 女性員工的平均年齡
select gender,avg(age) from emp group by gender;
-- C. 查詢年齡小于45的員工 , 并根據工作地址分組 , 獲取員工數量大于等于3的工作地址
select workaddress,count(*) address_count from emp where age <45 group by  workaddress having address_count >= 3;
-- D. 統計各個工作地址上班的男性及女性員工的數量
select workaddress,gender,count(*) '數量' from emp group by gender,  workaddress;
  • 執行順序:where > 聚合函數 > having
  • 分組之后,查詢字段一般為聚合函數和分組字段,查詢其他字段無任何意義。
DQL -排序查詢:

語法:

SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1,字段2 排序方式2;

排序方式:

  • ASC :升序
  • DESC:降序
-- 排序查詢
-- A.根據年齡對公司的員工進行升序排序
select * from emp order by age asc;
select * from emp order by age desc ;
-- B. 根據入職時間, 對員工進行降序排序
select * from emp order by entrydate desc;
-- C. 根據年齡對公司的員工進行升序排序 , 年齡相同 , 再按照入職時間進行降序排序
select * from  emp  order by  age asc, entrydate desc;

注意:如果是多字段排序,當第一個字段值相同時,才會根據第二個字段進行排序。

DQL -分頁查詢:

語法:

SELECT 字段列表 FROM 表名 LIMIT 起始索引,查詢記錄數;

-- 分頁查詢
-- A. 查詢第1頁員工數據, 每頁展示10條記錄
select * from emp limit 10;
-- B. 查詢第2頁員工數據, 每頁展示10條記錄 --------> (頁碼-1)*頁展示記錄數
select * from emp limit 10,10;
練習:
-- 2.6.8 案例
-- 1). 查詢年齡為20,21,22,23歲的員工信息。
select * from emp where gender = '女' and age in(20,21,22,23);-- 2). 查詢性別為 男 ,并且年齡在 20-40 歲(含)以內的姓名為三個字的員工。
select * from emp where gender = '男' and (age between 20 and 40) and name like '___';-- 3). 統計員工表中, 年齡小于60歲的 , 男性員工和女性員工的人數。
select gender,count(*) from emp where age < 60 group by gender;-- 4). 查詢所有年齡小于等于35歲員工的姓名和年齡,并對查詢結果按年齡升序排序,如果年齡相同按入職時間降序排序。
select name '姓名',age '年齡' from emp where age <= 35 order by age asc,entrydate desc ;-- 5). 查詢性別為男,且年齡在20-40 歲(含)以內的前5個員工信息,對查詢的結果按年齡升序排序,年齡相同按入職時間升序排序。
select * from emp where gender = '男' and (age between 20 and 40)  order by age asc,entrydate desc limit 5;
DQL -執行順序:

DCL:

DCL - 管理用戶:

1) 查詢用戶
select * from mysql.user; 1
2). 創建用戶
CREATE USER '用戶名'@'主機名' IDENTIFIED BY '密碼'; 1
3). 修改用戶密碼
ALTER USER '用戶名'@'主機名' IDENTIFIED WITH mysql_native_password BY '新密碼' ; 1
4). 刪除用戶
DROP USER '用戶名'@'主機名' ;

注意事項:

? 在MySQL中需要通過用戶名@主機名的方式,來唯一標識一個用戶。

DCL- 權限控制

函數

字符串函數

--  ----------------------------   函數 ------------------------------- --
-- conccat
select concat('Hello','Mysql');-- lower
select lower('HEllo');-- upper
select upper('hello');-- Lpad
select lpad('01',5,'-');-- rpad
select rpad('01',5,'-');-- trim
select trim(' Hello   MySql   ');-- substring
select substring('Hello  MySQL',1,5);update emp set workno = lpad(workno,5,'0');

數值函數

常見的數值函數如下:

-- 數值函數
-- ceil
select ceil(1.5);-- floor
select floor(1.1);-- mod
select mod(3,4);-- rand
select rand();-- round
select round(2.345,2);-- 生成六位隨機驗證碼
select lpad(round(rand() * 1000000,0),6,'0') ;

日期函數

-- 日期函數
-- curdate
select curdate();
-- curtime
select curtime();
-- now
select now();-- Year,MONTH,DAY
select YEAR(NOW());
SELECT MONTH(NOW());
SELECT DAY(NOW());-- DATE_ADD
SELECT DATE_ADD(NOW(),INTERVAL 70 DAY );-- DATEDIFF(第一個時間減去第二個時間)
SELECT DATEDIFF('2021-12-01','2021-12-21');select name,datediff(curdate(),entrydate) as 'entrydays' from emp order by entrydays desc ;

流程函數

-- 流程控制函數
-- -- IF
select if(true,'ok','Error');
select if(false,'ok','Error');-- IFNULL
select ifnull('ok','default'); -- ok
select ifnull(null,'default'); -- default-- CASE
SELECTNAME,(CASE workaddress WHEN '北京' then '一線城市' when '上海' then '一線城市' else '二線城市' end) as '工作地址'
FROM emp;
-- 案例
selectid,name,(case  when math >=85 then '優秀' when math >=60 then '及格' else '不及格' end) '數學' ,(case  when english >=85 then '優秀' when english >=60 then '及格' else '不及格' end) '英語' ,(case  when chinese >=85 then '優秀' when chinese >=60 then '及格' else '不及格' end) '語文'from score;

約束

概述:

案例:

根據需求,完成表結構的創建

create table user (id int primary key auto_increment comment '主鍵',name varchar(10) not null unique comment '姓名',age int check ( age> 0 && age <= 120 ) comment '年齡',status char(1) default '1' comment '狀態',gender char(1) comment '性別'
) comment '用戶表';-- 插入數據insert into user (name,age,status,gender) values ('程夢雨',19,'1','女'),('Messi',20,'1','男');

外鍵約束:

外鍵用來讓兩張表的數據之間建立連接,從而保證數據的一致性和完整性。

語法:
添加外鍵:
CREATE TABLE 表名 (字段名  數據類型,...[CONSTRAINT] [外鍵名稱] FOREIGN KEY (外鍵字段名) REFERENCES 主表 (主表列名)
);
ALTER TABLE 表名 ADD CONSTRAINT 外鍵名稱 FOREIGN KEY(外鍵字段名) REFERENCE 主表(主表列名);
ALTER TABLE emp ADD CONSTRAINT fk_emp_dept_id FOREIGN KEY (dept_id) references dept(id);
刪除外鍵:
ALTER TABLE 表名 DROP FOREIGN KEY 外鍵名稱;
-- 刪除外鍵
ALTER TABLE emp DROP FOREIGN KEY fk_emp_dept_id;
刪除/更新行為:

語法:

ALTER TABLE 表名 ADD CONSTRAINT 外鍵名稱 FOREIGN KEY (外鍵字段名) REFERENCES 主表名 ON UPDATE CASCADE ON DELETE CASCADE;
-- 外鍵的刪除和更新行為
ALTER TABLE emp ADD CONSTRAINT fk_emp_dept_id FOREIGN KEY (dept_id) REFERENCES dept(id) ON UPDATE CASCADE ON DELETE CASCADE ;ALTER TABLE emp ADD CONSTRAINT fk_emp_dept_id FOREIGN KEY (dept_id) REFERENCES dept(id) ON UPDATE SET NULL ON DELETE SET NULL ;

多表查詢:

概述:指從多張表中查詢數據

笛卡爾積:兩個集合A和集合B的所有組合情況。(在多表查詢時,需要消除無效的笛卡爾積)

-- 多表查詢
select * from emp , dept where emp.dept_id = dept.id;
多表查詢分類:

連接查詢 - 內連接:

-- 內連接
-- 1.查詢每一個員工的姓名及關聯的部門的名稱(隱式內連接實現)
select emp.name,dept.name from emp,dept where emp.dept_id = dept.id;-- 2. 查詢每一個員工的姓名,及關聯的部門的名稱(顯式內連接實現)
select emp.name , dept.name from emp inner join dept on emp.dept_id = dept.id;
連接查詢 - 外連接:

-- 外連接
-- 1. 查詢emp標的所有數據,和對應的部門信息(左外)
select emp.* ,d.name from emp left join dept d on d.id = emp.dept_id;-- 2. 查詢dept表的所有數據,和相對應的員工信息(右外)
select d.* , emp.*  from emp right join  dept d on d.id = emp.dept_id;
連接查詢 - 子連接:

-- 子鏈接
-- 1. 查詢員工及其領導的名字
select e.name , b.name from emp e , emp b where e.managerid = b.id;-- 2. 查詢員工及其領導的名字 ,如果沒有領導,也要查詢出來
select a.name '員工', b.name '領導' from emp a left join emp b on a.managerid = b.id;
聯合查詢:

-- union all , union
-- 1. 將薪資低于 5000 的員工,和年齡大于50歲的員工共查詢出來
select * from emp where salary < 5000
union all
select * from emp where age > 50;select * from emp where salary < 5000
union
select * from emp where age > 50;
子查詢:

標量子查詢:(返回單個值)

-- 標量子查詢
-- 1. 查詢“銷售部”的所有員工信息
select * from emp where dept_id = (select id from dept where name = '銷售部');-- 2. 查詢“房東白”入職之后的員工信息
select entrydate from emp where name = '方東白';select * from emp where entrydate > (select entrydate from emp where name = '方東白');
列子查詢:(返回的結果是一列)

-- 列子查詢
-- 1. 查詢銷售部和市場部的所有員工信息
select * from emp where dept_id in (select dept.id from dept where name = '市場部' or name = '銷售部');-- 2. 查詢比財務部所有人員工資都高的員工信息
select * from emp where salary > all (select salary from emp where dept_id  = (select id from dept where name = '財務部'));-- 3. 查詢比研發部其中任意一人工資高的員工信息
select salary from emp where dept_id  = (select id from dept where name = '研發部');select * from emp where salary > any (select salary from emp where dept_id  = (select id from dept where name = '研發部'));
行子查詢:

-- 行子查詢
-- 1. 查詢與“張無忌”工資和直屬領導相同的信息
select salary , managerid from emp where name = '張無忌';select * from emp where (salary,managerid) = (select salary , managerid from emp where name = '張無忌');
表子查詢:(返回多行多列)

-- 表子查詢
-- 1. 查詢路杖客,宋遠橋的職位和薪資相同的員工信息
select salary , job from emp where name = '鹿杖客' or name = '宋遠橋';select * from emp where (job,salary) in (select job, salary  from emp where name = '鹿杖客' or name = '宋遠橋');-- 2.查詢入職日期是2006-01-01之后的員工信息及其部門信息
select * from emp where entrydate > '2006-01-01';select e.* , d.* from (select * from emp where entrydate > '2006-01-01') e  left join dept d on e.dept_id = d.id;
練習:
-- 1. 查詢員工的姓名、年齡、職位、部門信息 (隱式內連接)
select e.name, e.age,e.job,d.name from emp e join dept d on d.id = e.dept_id;-- 2. 查詢年齡小于30歲的員工的姓名、年齡、職位、部門信息(顯式內連接)
select e.name,e.age,e.job,d.name from emp e join dept d on d.id = e.dept_id where e.age < 30;-- 3. 查詢擁有員工的部門ID、部門名稱
select distinct d.id,d.name from emp e,dept d where e.dept_id = d.id;-- 4. 查詢所有年齡大于40歲的員工, 及其歸屬的部門名稱; 如果員工沒有分配部門, 也需要展示出來-- 外連接select e.*,d.name from emp e left join dept d on d.id = e.dept_id where e.age > 40;-- 5. 查詢所有員工的工資等級-- 表:emp salgrade-- 連接條件:emp.salary >= salgrade.losal and emp.salary <= salgrade.hisalselect e.* ,s.grade from emp e ,salgrade s where e.salary >= s.losal and e.salary <= s.hisal;-- 6. 查詢 "研發部" 所有員工的信息及 工資等級
select e.*, s.grade
from emp e,salgrade s
where e.dept_id = (select dept.id from dept where dept.name = '研發部')and (e.salary between s.losal and s.hisal);-- 7. 查詢 "研發部" 員工的平均工資
select avg( e.salary) '平均工資' from emp e, dept d where e.dept_id = d.id and d.name = '研發部';-- 8. 查詢工資比 "滅絕" 高的員工信息
select * from emp where salary > (select salary from emp where name = '滅絕');-- 9. 查詢比平均薪資高的員工信息
select avg(salary) from  emp;
select * from emp where salary > (select avg(salary) from emp);-- 10. 查詢低于本部門平均工資的員工信息
select avg(e1.salary) from emp e1 where e1.dept_id = 1;select *,(select avg(e1.salary) from emp e1 where e1.dept_id = e2.dept_id) '平均工資' from emp e2 where e2.salary < (select avg(e1.salary) from emp e1 where e1.dept_id = e2.dept_id);-- 11. 查詢所有的部門信息, 并統計部門的員工人數
select d.id ,d.name, (select count(*) from emp e where e.dept_id = d.id) '人數' from dept d;select count(*) from emp where dept_id = 1;-- 12. 查詢所有學生的選課情況, 展示出學生名稱, 學號, 課程名稱
總結:

事務:

事務簡介:

select @@autocommit;set @@autocommit = 0; -- 設置手動提交
-- 轉賬操作
-- 1. 查詢張三賬戶余額
select * from account where name = '張三';-- 2. 將張三的賬戶余額 -1000
update account set money = money - 1000 where name = '張三';程序執行報錯...-- 3. 將李四賬戶余額+1000
update account set money = money + 1000 where name = '李四';-- 提交事務
commit;-- 回滾事務
rollback;

--    ---------------- 方式二 ----------------
begin ;
-- 轉賬操作
-- 1. 查詢張三賬戶余額
select * from account where name = '張三';-- 2. 將張三的賬戶余額 -1000
update account set money = money - 1000 where name = '張三';程序執行報錯...-- 3. 將李四賬戶余額+1000
update account set money = money + 1000 where name = '李四';-- 提交事務
commit ;-- 回滾事務
rollback ;
事務的四大特性:

并發事務問題:

并發事務的隔離級別:

orcal的默認是 Read committted

事務隔離級別越高,數據效率越低

總結:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75702.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75702.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75702.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

實操(環境變量)Linux

環境變量概念 我們用語言寫的文件編好后變成了程序&#xff0c;./ 運行的時候他就會變成一個進程被操作系統調度并運行&#xff0c;運行完畢進程相關資源被釋放&#xff0c;因為它是一個bash的子進程&#xff0c;所以它退出之后進入僵尸狀態&#xff0c;bash回收他的退出結果&…

torch.cat和torch.stack的區別

torch.cat 和 torch.stack 是 PyTorch 中用于組合張量的兩個常用函數&#xff0c;它們的核心區別在于輸入張量的維度和輸出張量的維度變化。以下是詳細對比&#xff1a; 1. torch.cat (Concatenate) 作用&#xff1a;沿現有維度拼接多個張量&#xff0c;不創建新維度 輸入要求…

深入解析@Validated注解:Spring 驗證機制的核心工具

一、注解出處與核心定位 1. 注解來源 ? 所屬框架&#xff1a;Validated 是 Spring Framework 提供的注解&#xff08;org.springframework.validation.annotation 包下&#xff09;。 ? 核心定位&#xff1a; 作為 Spring 對 JSR-380&#xff08;Bean Validation 2.0&#…

2025年認證杯數學建模競賽A題完整分析論文(含模型、可運行代碼)(共32頁)

2025年認證杯數學建模競賽A題完整分析論文 目錄 摘要 一、問題分析 二、問題重述 三、模型假設 四、 模型建立與求解 4.1問題1 4.1.1問題1解析 4.1.2問題1模型建立 4.1.3問題1樣例代碼&#xff08;僅供參考&#xff09; 4.1.4問題1求解結果分析&#xff08…

Google A2A協議,是為了戰略性占領標準?

一、導讀 2025 年 4 月 9 日&#xff0c;Google 正式發布了 Agent2Agent&#xff08;A2A&#xff09;協議。 A2A 協議致力于打破智能體之間的隔閡&#xff0c;讓它們能夠跨越框架和供應商的限制&#xff0c;以一種標準化、開放的方式進行溝通與協作 截止到現在&#xff0c;代…

Ansible:roles角色

文章目錄 Roles角色Ansible Roles目錄編排Roles各目錄作用創建 roleplaybook調用角色調用角色方法1&#xff1a;調用角色方法2&#xff1a;調用角色方法3&#xff1a; roles 中 tags 使用實戰案例 Roles角色 角色是ansible自1.2版本引入的新特性&#xff0c;用于層次性、結構化…

MCU的USB接口作為 USB CDC串口輸出

引用&#xff1a; https://microchip-mplab-harmony.github.io/usb_apps_device/apps/usb_uart_bridge_dual/readme.html STM32 USB使用記錄&#xff1a;使用CDC類虛擬串口&#xff08;VCP&#xff09;進行通訊_stm32 usb使用記錄:使用cdc類虛擬串口(vcp)進行通訊-CSDN博客 前…

深度解析強化學習:原理、算法與實戰

深度解析強化學習:原理、算法與實戰 0. 前言1. 強化學習基礎1.1 基本概念1.2 馬爾科夫決策過程1.3 目標函數1.4 智能體學習過程2. 計算狀態值3. 計算狀態-動作值4. Q 學習4.1 Q 值4.2 使用 Q 學習進行 frozen lake 游戲4.3. frozen lake 問題4.4 實現 Q 學習小結系列鏈接0. 前…

UE5藍圖之間的通信------接口

一、創建藍圖接口 二、雙擊創建的藍圖接口&#xff0c;添加函數&#xff0c;并重命名新函數。 三、在一個藍圖&#xff08;如玩家角色藍圖&#xff09;中實現接口&#xff0c;如下圖&#xff1a; 步驟一&#xff1a;點擊類設置 步驟二&#xff1a;在細節面板已經實現的接口中…

2025 年“認證杯”數學中國數學建模網絡挑戰賽 A題 小行星軌跡預測

近地小行星&#xff08; Near Earth Asteroids, NEAs &#xff09;是軌道相對接近地球的小行 星&#xff0c;它的正式定義為橢圓軌道的近日距不大于 1.3 天文單位&#xff08; AU &#xff09;的小行星。 其中軌道與地球軌道最近距離小于 0.05A 且直徑大于 140 米的小行星被…

Axure中繼器(Repeater): 列表多選和 列表查詢

文章目錄 引言I 列表多選添加選中交互事件添加未選中交互事件II 列表查詢知識點操作說明引言 基于鼠標點擊交互事件實現列表多選列表查詢 I 列表多選 添加選中交互事件 給列標題第一列多選框元件命名為ckeck,并同時添加選中交互事件; 同步添加設置選擇/選中動作,目標元件選…

windows11下pytorch(cpu)安裝

先裝anaconda 見最下方 Pytorch 官網&#xff1a;PyTorch 找到下圖&#xff08;不要求版本一樣&#xff09;&#xff08;我的電腦是集顯&#xff08;有navdia的裝gpu&#xff09;&#xff0c;裝cpu&#xff09; 查看已有環境列表 創建環境 conda create –n 虛擬環境名字(…

最新版IDEA超詳細圖文安裝教程(適用Mac系統)附安裝包及補丁2025最新教程

目錄 前言 一、IDEA最新版下載 二、IDEA安裝 三、IDEA補丁 前言 IDEA&#xff08;IntelliJ IDEA&#xff09;是專為Java語言設計的集成開發環境&#xff08;IDE&#xff09;&#xff0c;由JetBrains公司開發&#xff0c;被公認為業界最優秀的Java開發工具之一。DEA全稱Int…

react從零開始的基礎課1

全文約5萬字。 1.hello,.. // App.jsx import { useState } from react import reactLogo from ./assets/react.svg import viteLogo from /vite.svg import ./App.cssfunction App() {const [count, setCount] useState(0)return (<><Greeting name"world&qu…

【linux知識】web服務環境搭建(一):用戶以及開發環境初始化

toc 創建用戶組以及用戶 以下是 創建用戶組 wendao 和用戶 wendao 并指定 GID、UID 及家目錄 的完整操作指南&#xff1a; 一、創建用戶組&#xff08;指定 GID&#xff09; sudo groupadd -g 1500 wendao # 創建組并指定 GID 為 1500? 注意&#xff1a;GID 需唯一&#…

音視頻 五 看書的筆記 MediaCodec

MediaCodec 用于訪問底層媒體編解碼器框架&#xff0c;編解碼組件。通常與MediaExtractor(解封裝,例如Mp4文件分解成 video和audio)、MediaSync、MediaMuxer(封裝 例如音視頻合成Mp4文件)、MediaCrypto、Image(cameraX 回調的ImageReader對象可以獲取到Image幀圖像,可轉換成YU…

李宏毅NLP-3-語音識別part2-LAS

語音識別part2——LAS Listen Listen主要功能是提取內容信息&#xff0c;去除說話人差異和噪聲 。編碼器&#xff08;Encoder&#xff09;結構&#xff0c;輸入是聲學特征&#xff0c;經過 Encoder 處理后&#xff0c;輸出為高級表示&#xff0c;這些高級表示可用于后續語音識別…

開源CMS的模塊化設計和API接口如何具體影響其擴展性?

優秀的CMS系統都有自己主打的特點&#xff0c;開源CMS憑借其靈活性和低成本優勢占據了市場主流地位&#xff0c;而模塊化設計與API接口正是其擴展性的兩大基石。本文將深入探討這兩大技術特性是如何影響cms的擴展性的。 一、模塊化設計&#xff1a;功能解耦與生態繁榮的引擎 …

一文讀懂WPF系列之常用控件以及樣式

WPF控件 控件分類概覽常用控件常用控件代碼示例和效果 樣式與模板應用樣式定義??方式行內樣式??頁面/窗口級資源樣式&#xff08;Local Resource&#xff09;應用程序全局資源獨立資源字典&#xff08;ResourceDictionary&#xff09;控件模板&#xff08;ControlTemplate&…

AndroidTV D貝桌面-v3.2.5-[支持文件傳輸]

AndroidTV D貝桌面 鏈接&#xff1a;https://pan.xunlei.com/s/VONXSBtgn8S_BsZxzjH_mHlAA1?pwdzet2# AndroidTV D貝桌面-v3.2.5[支持文件傳輸] 第一次使用的話&#xff0c;壁紙默認去掉的&#xff0c;不需要按遙控器上鍵&#xff0c;自己更換壁紙即可