最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL查詢(xún)、表操作與數(shù)據(jù)管理的操作指南

 更新時(shí)間:2026年03月04日 15:24:13   作者:輕華  
這篇文章給大家介紹了MySQL查詢(xún)、表操作與數(shù)據(jù)管理,從「數(shù)據(jù)查詢(xún)」「表的創(chuàng)建與數(shù)據(jù)管理」「表結(jié)構(gòu)修改與刪除」三個(gè)核心維度,講解了MySQL的實(shí)戰(zhàn)操作,感興趣的朋友跟隨小編一起看看吧

 前言

         MySQL 作為全球最流行的關(guān)系型數(shù)據(jù)庫(kù)之一,廣泛應(yīng)用于 Web 開(kāi)發(fā)、數(shù)據(jù)分析等場(chǎng)景。對(duì)于初學(xué)者而言,掌握基礎(chǔ)的查詢(xún)語(yǔ)法、表結(jié)構(gòu)操作、數(shù)據(jù)導(dǎo)入導(dǎo)出是入門(mén)的核心。本文將結(jié)合「學(xué)生 - 成績(jī) - 科目」的實(shí)戰(zhàn)場(chǎng)景,從「數(shù)據(jù)查詢(xún)」「表的創(chuàng)建與數(shù)據(jù)管理」「表結(jié)構(gòu)修改與刪除」三個(gè)維度,手把手教你玩轉(zhuǎn) MySQL 核心操作。

一、表的創(chuàng)建與數(shù)據(jù)導(dǎo)入導(dǎo)出:基礎(chǔ)架構(gòu)與數(shù)據(jù)管理

        想要查詢(xún)數(shù)據(jù),首先要搭建表結(jié)構(gòu)并導(dǎo)入數(shù)據(jù)。本節(jié)講解表的創(chuàng)建、數(shù)據(jù)導(dǎo)入、數(shù)據(jù)導(dǎo)出全流程。

1.1 創(chuàng)建表:定義數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)

        MySQL 表通過(guò)CREATE TABLE創(chuàng)建,支持 Navicat 可視化操作和命令行兩種方式,核心是定義字段名、類(lèi)型、注釋等。

1.1.1 核心業(yè)務(wù)表結(jié)構(gòu)

        示例核心表的結(jié)構(gòu)如下:

1.1.2 命令行創(chuàng)建表示例

        以students表為例,命令行創(chuàng)建語(yǔ)法:

CREATE TABLE `students` (
  `stu_id` bigint(10) DEFAULT NULL COMMENT '學(xué)生學(xué)號(hào)',
  `stu_name` varchar(255) DEFAULT NULL COMMENT '學(xué)生姓名',
  `gender` varchar(255) DEFAULT NULL COMMENT '學(xué)生性別',
  `age` int(10) DEFAULT NULL COMMENT '學(xué)生年齡',
  `major` varchar(255) DEFAULT NULL COMMENT '學(xué)生專(zhuān)業(yè)',
  `clazz` varchar(255) DEFAULT NULL COMMENT '學(xué)生班級(jí)',
  `year` bigint(20) DEFAULT NULL COMMENT '入學(xué)年份'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

1.2 導(dǎo)入數(shù)據(jù):多種方式填充數(shù)據(jù)

        表創(chuàng)建完成后,需導(dǎo)入數(shù)據(jù),常用方式有「可視化導(dǎo)入」「SQL 插入」「文件導(dǎo)入」。

1.2.1 SQL 插入數(shù)據(jù)

        單條插入:

insert into students values(20250101,'張三','男',20,'計(jì)算機(jī)科學(xué)與技術(shù)','計(jì)科2501',2025);

        多行插入(高效批量導(dǎo)入少量數(shù)據(jù)):

insert into students(stu_id,stu_name,gender,age,major,clazz,year) values
(20250101,'張三','男',20,'計(jì)算機(jī)科學(xué)與技術(shù)','計(jì)科2501',2025),
(20250102,'李四','女',20,'計(jì)算機(jī)科學(xué)與技術(shù)','計(jì)科2501',2025),
(20250103,'王五','男',19,'計(jì)算機(jī)科學(xué)與技術(shù)','計(jì)科2501',2025);

1.2.2 文件導(dǎo)入(大批量數(shù)據(jù))

        通過(guò)LOAD DATA命令可快速導(dǎo)入文本文件(如.txt)數(shù)據(jù),適合大批量數(shù)據(jù):

# Windows系統(tǒng)(注意路徑轉(zhuǎn)義)
load data local infile 'D:\\Desktop\\mysqlmd\\data\\students.txt' into table students fields terminated by ',';
# Linux系統(tǒng)
load data local infile '/root/data/students.txt' into table students fields terminated by ',';

1.2.3 Navicat 可視化導(dǎo)入

        Navicat 提供「導(dǎo)入向?qū)А?,支?Excel、CSV、TXT 等格式,步驟簡(jiǎn)單易操作(如圖 1):選擇表 → 右鍵 → 導(dǎo)入向?qū)?→ 選擇文件 → 配置分隔符 / 編碼 → 映射字段 → 執(zhí)行導(dǎo)入。

1.3 導(dǎo)出數(shù)據(jù):備份與數(shù)據(jù)遷移

        數(shù)據(jù)導(dǎo)出是備份、遷移的核心操作,支持可視化導(dǎo)出和命令行導(dǎo)出。

1.3.1 Navicat 可視化導(dǎo)出

        選擇要導(dǎo)出的表 → 右鍵 → 導(dǎo)出向?qū)?→ 選擇導(dǎo)出格式(SQL/Excel/CSV) → 配置導(dǎo)出路徑和參數(shù) → 執(zhí)行導(dǎo)出。

1.3.2 命令行導(dǎo)出(mysqldump)

   mysqldump是 MySQL 官方備份工具,適合批量備份:

# 基礎(chǔ)導(dǎo)出(不建議明文寫(xiě)密碼)
mysqldump -uroot -p123456 stu students > /root/data/students.sql
# 配置別名(簡(jiǎn)化備份命令)
alias db_backup='mysqldump -uroot -p --single-transaction stu students > /root/data/mydb_$(date +%Y%m%d).sql'
# 備份并壓縮(節(jié)省空間)
alias db_backup='mysqldump -uroot -p --single-transaction stu students | gzip > /root/data/mydb_$(date +%Y%m%d).sql.gz'

二、表結(jié)構(gòu)修改與刪除:靈活調(diào)整表設(shè)計(jì)

        實(shí)際業(yè)務(wù)中,表結(jié)構(gòu)需隨需求調(diào)整,ALTER TABLE是核心語(yǔ)法;不再使用的表可通過(guò)DROP TABLE刪除。

2.1 ALTER TABLE:修改表結(jié)構(gòu)

  ALTER TABLE支持追加字段、修改字段、刪除字段、重命名字段 / 表等操作,核心語(yǔ)法如下:

操作類(lèi)型語(yǔ)法示例說(shuō)明
新增字段alter table students add dateT date;新增日期字段
設(shè)置默認(rèn)值alter table students add dateT date DEFAULT "2025-12-12";新增字段并設(shè)默認(rèn)值
修改字段類(lèi)型alter table students modify dateT datetime;修改字段類(lèi)型(必須聲明類(lèi)型)
修改字段非空alter table students modify stu_id int not null;設(shè)置字段非空
刪除字段alter table students drop length;刪除指定字段
重命名字段alter table students change stu_id sid varchar(255);重名字段并改類(lèi)型
修改字符集alter table students character set utf8;修改表字符集
重命名表alter table students rename to student;表重命名

示例:修改字段名稱(chēng)和類(lèi)型

        將學(xué)生表的stu_id重命名為sid,并修改類(lèi)型為varchar(255)

alter table students change stu_id sid varchar(255);

2.2 DROP TABLE:刪除表

        刪除不再使用的表,可加IF EXISTS避免表不存在時(shí)報(bào)錯(cuò):

-- 安全刪除表
drop table if exists students;

三、MySQL 基礎(chǔ)查詢(xún):從單表到多表的進(jìn)階

        數(shù)據(jù)查詢(xún)是 MySQL 最核心的能力之一,我們以「學(xué)生 - 成績(jī) - 科目」的業(yè)務(wù)場(chǎng)景為例,講解各類(lèi)查詢(xún)技巧。

3.1 基礎(chǔ)查詢(xún)語(yǔ)法

        先定義核心業(yè)務(wù)表(后文會(huì)詳細(xì)講解表創(chuàng)建):students(學(xué)生表)、scores(成績(jī)表)、subjects(科目表),從單表查詢(xún)?nèi)胧种鸩竭M(jìn)階。

3.1.1 全量查詢(xún)與精準(zhǔn)條件查詢(xún)

        全量查詢(xún)是最基礎(chǔ)的操作,可獲取表中所有數(shù)據(jù):

select * from students;

        精準(zhǔn)條件查詢(xún)通過(guò)WHERE篩選符合規(guī)則的數(shù)據(jù),比如查詢(xún)年齡 20 歲的學(xué)生(僅展示姓名和年齡):

select name, age 
from students
where age = 20;

        查詢(xún)「人工智能」專(zhuān)業(yè)的所有學(xué)生(注意字符串匹配需規(guī)避換行符等細(xì)節(jié)):

select * 
from students 
where major='人工智能';

3.1.2 模糊查詢(xún):匹配關(guān)鍵詞

        當(dāng)需要模糊匹配(如查詢(xún) “計(jì)算機(jī)科學(xué)” 相關(guān)專(zhuān)業(yè)),使用LIKE關(guān)鍵字 + 通配符(%匹配任意字符):

select * 
from students 
where major LIKE '%計(jì)算機(jī)科學(xué)%';

3.1.3 排序查詢(xún):按字段排序

        通過(guò)ORDER BY實(shí)現(xiàn)排序,DESC表示倒序(默認(rèn)ASC升序)。例:查詢(xún)年齡 20 歲的學(xué)生并按 ID 倒序:        

SELECT id, name
FROM students
WHERE age = 20
ORDER BY id DESC;

3.1.4 聚合查詢(xún):分組統(tǒng)計(jì)數(shù)據(jù)

        MySQL 提供MAX/MIN/AVG/SUM/COUNT等聚合函數(shù),結(jié)合GROUP BY可實(shí)現(xiàn)分組統(tǒng)計(jì)。例:查詢(xún)每個(gè)專(zhuān)業(yè)的最大年齡:

SELECT major,MAX(age) as max_age
FROM students
GROUP BY major;

3.2 多表連接查詢(xún):關(guān)聯(lián)多維度數(shù)據(jù)

        實(shí)際業(yè)務(wù)中數(shù)據(jù)分散在多張表,需通過(guò)連接查詢(xún)整合。

3.2.1 內(nèi)連接(INNER JOIN)

        僅返回多張表中「匹配關(guān)聯(lián)條件」的數(shù)據(jù),例:查詢(xún)學(xué)生的成績(jī)及對(duì)應(yīng)科目名稱(chēng):

SELECT s.*, sc.subject_id, su.subject_name
FROM (
students s
JOIN
scores sc
JOIN
subjects su
ON s.id = sc.stu_id and sc.subject_id = su.subject_id
);

3.2.2 外連接(LEFT/RIGHT/FULL JOIN)

        外連接會(huì)返回「主表所有數(shù)據(jù)」,關(guān)聯(lián)表無(wú)匹配則補(bǔ)NULL。例:右連接查詢(xún)所有成績(jī)記錄(包括無(wú)對(duì)應(yīng)學(xué)生的成績(jī)):

SELECT *
FROM(
students as s
RIGHT JOIN
scores as sc
ON s.id = sc.stu_id
);

3.3 常用查詢(xún)語(yǔ)法總結(jié)

語(yǔ)法類(lèi)型關(guān)鍵字 / 函數(shù)示例場(chǎng)景
全量查詢(xún)SELECT * FROM查詢(xún)所有學(xué)生信息
條件查詢(xún)WHERE查詢(xún)年齡 20 歲的學(xué)生
模糊查詢(xún)LIKE + %查詢(xún)含 “計(jì)算機(jī)科學(xué)” 的專(zhuān)業(yè)
排序查詢(xún)ORDER BY + DESC/ASC按 ID 倒序查詢(xún)學(xué)生
聚合查詢(xún)MAX/MIN/AVG + GROUP BY按專(zhuān)業(yè)統(tǒng)計(jì)最大年齡
內(nèi)連接INNER JOIN/ JOIN關(guān)聯(lián)學(xué)生、成績(jī)、科目表
外連接LEFT/RIGHT JOIN查詢(xún)所有成績(jī)(含無(wú)學(xué)生匹配)

四、總結(jié)

        本文從「數(shù)據(jù)查詢(xún)」「表的創(chuàng)建與數(shù)據(jù)管理」「表結(jié)構(gòu)修改與刪除」三個(gè)核心維度,講解了 MySQL 的實(shí)戰(zhàn)操作。掌握這些基礎(chǔ)語(yǔ)法后,可進(jìn)一步學(xué)習(xí)索引優(yōu)化、事務(wù)、存儲(chǔ)過(guò)程等進(jìn)階內(nèi)容。

核心要點(diǎn)回顧:

  1. 查詢(xún)是核心:?jiǎn)伪聿樵?xún)掌握WHERE/LIKE/ORDER BY/GROUP BY,多表查詢(xún)掌握JOIN;
  2. 表與數(shù)據(jù)管理:CREATE TABLE建表,INSERT/LOAD DATA導(dǎo)入數(shù)據(jù),mysqldump導(dǎo)出備份;
  3. 表結(jié)構(gòu)調(diào)整:ALTER TABLE靈活修改表,DROP TABLE安全刪除表。

建議結(jié)合實(shí)際業(yè)務(wù)場(chǎng)景多練多試,比如模擬 “學(xué)生成績(jī)管理系統(tǒng)”,從建表、導(dǎo)入數(shù)據(jù)到復(fù)雜查詢(xún),逐步夯實(shí) MySQL 基礎(chǔ)。

到此這篇關(guān)于MySQL查詢(xún)、表操作與數(shù)據(jù)管理的操作指南的文章就介紹到這了,更多相關(guān)mysql查詢(xún)表操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決Node.js mysql客戶(hù)端不支持認(rèn)證協(xié)議引發(fā)的問(wèn)題

    解決Node.js mysql客戶(hù)端不支持認(rèn)證協(xié)議引發(fā)的問(wèn)題

    這篇文章主要介紹了解決Node.js mysql客戶(hù)端不支持認(rèn)證協(xié)議引發(fā)的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,,需要的朋友可以參考下
    2019-06-06
  • Mysql InnoDB的鎖定機(jī)制實(shí)例詳解

    Mysql InnoDB的鎖定機(jī)制實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于Mysql InnoDB的鎖定機(jī)制,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • MySQL中的存儲(chǔ)過(guò)程異常處理

    MySQL中的存儲(chǔ)過(guò)程異常處理

    這篇文章主要介紹了MySQL中的存儲(chǔ)過(guò)程異常處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 解決hibernate+mysql寫(xiě)入數(shù)據(jù)庫(kù)亂碼

    解決hibernate+mysql寫(xiě)入數(shù)據(jù)庫(kù)亂碼

    初次沒(méi)習(xí)hibernate,其中遇到問(wèn)題在網(wǎng)上找的答案與大家共同分享!
    2009-07-07
  • MySQL數(shù)據(jù)庫(kù)索引及底層數(shù)據(jù)結(jié)構(gòu)詳解

    MySQL數(shù)據(jù)庫(kù)索引及底層數(shù)據(jù)結(jié)構(gòu)詳解

    MySQL默認(rèn)使用B+樹(shù)索引和InnoDB引擎,索引通過(guò)有序結(jié)構(gòu)加速數(shù)據(jù)檢索,但增加存儲(chǔ)與維護(hù)成本,B+樹(shù)優(yōu)化了磁盤(pán)讀寫(xiě)與范圍查詢(xún)效率,成為主流選擇,本文介紹MySQL數(shù)據(jù)庫(kù)索引及底層數(shù)據(jù)結(jié)構(gòu)的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2025-08-08
  • 一個(gè)小時(shí)學(xué)會(huì)MySQL數(shù)據(jù)庫(kù)(張果)

    一個(gè)小時(shí)學(xué)會(huì)MySQL數(shù)據(jù)庫(kù)(張果)

    當(dāng)前大量的網(wǎng)站使用php語(yǔ)言,那么對(duì)應(yīng)的就是mysql數(shù)據(jù)庫(kù),這里就為大家分享一下MySQL數(shù)據(jù)庫(kù)的相關(guān)知識(shí),希望大家多多支持腳本之家
    2018-01-01
  • mysql獲取字符串長(zhǎng)度函數(shù)(CHAR_LENGTH)

    mysql獲取字符串長(zhǎng)度函數(shù)(CHAR_LENGTH)

    本文介紹一下關(guān)于mysql獲取字符串長(zhǎng)度的方法,希望此教程對(duì)各位同學(xué)會(huì)有所幫助哦。
    2013-11-11
  • MySQL的join buffer原理

    MySQL的join buffer原理

    這篇文章主要介紹了MySQL的join buffer原理,幫助大家更好的理解和學(xué)習(xí)使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2021-04-04
  • mysql斷電后無(wú)法啟動(dòng)的問(wèn)題小結(jié)

    mysql斷電后無(wú)法啟動(dòng)的問(wèn)題小結(jié)

    這篇文章主要介紹了mysql斷電后無(wú)法啟動(dòng)的問(wèn)題小結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-04-04
  • MySQL?COALESCE函數(shù)使用方法示例詳解

    MySQL?COALESCE函數(shù)使用方法示例詳解

    MySQL中的COALESCE()函數(shù)是一個(gè)非常實(shí)用的工具,它在處理NULL值時(shí)提供了靈活性,這篇文章主要介紹了MySQL?COALESCE函數(shù)使用方法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-12-12

最新評(píng)論

永济市| 永寿县| 颍上县| 凤城市| 祁门县| 顺平县| 平和县| 永安市| 滁州市| 昔阳县| 大英县| 太仆寺旗| 登封市| 电白县| 加查县| 册亨县| 仁寿县| 安泽县| 卢氏县| 阿尔山市| 遂溪县| 日喀则市| 通山县| 富民县| 布尔津县| 上犹县| 北流市| 密山市| 怀仁县| 梨树县| 凤台县| 嘉祥县| 洪泽县| 邢台市| 柳林县| 江城| 余干县| 林西县| 富平县| 绥宁县| 宁武县|