欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文帶你學(xué)透SQL語(yǔ)言的核心之DML操作

 更新時(shí)間:2023年06月07日 10:44:24   作者:陳橘又青  
DML(Data?Manipulation?Language)是SQL語(yǔ)言的核心部分,其主要用于對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行增刪改查,在學(xué)習(xí)數(shù)據(jù)時(shí),學(xué)習(xí)DML操作是必不可少的一部分,本文就帶大家詳細(xì)了解SQL語(yǔ)言的核心DML操作,需要的朋友可以參考下

我們已經(jīng)基本學(xué)會(huì)了寫(xiě)SQL來(lái)操作數(shù)據(jù)庫(kù),但在命令行中寫(xiě)SQL時(shí),往往有體驗(yàn)感差,效率低等問(wèn)題,今天開(kāi)始我們就學(xué)習(xí)一下在MySQL的圖形化客戶端Navicat中執(zhí)行SQL語(yǔ)句

Navicat 為數(shù)據(jù)庫(kù)管理、開(kāi)發(fā)和維護(hù)提供了一款直觀而強(qiáng)大的圖形界面,大大的提高了工作效率,建議在學(xué)習(xí)中也使用這款開(kāi)發(fā)工具。接下來(lái),在Navicat中新建查詢,我們就可以編寫(xiě)SQL并且執(zhí)行SQL語(yǔ)句了。

1.添加數(shù)據(jù)

給指定列添加數(shù)據(jù):

insert into 表名(列名1,列名2...) values(值1,值2...);

?????給全部列添加數(shù)據(jù):

insert into 表名 values(值1,值2...);

批量添加數(shù)據(jù):

insert into 表名(列名1,列名2...) values(值1,值2...),(值1,值2...),(值1,值2...)...;

批量添加數(shù)據(jù)(省略字段名):

insert into 表名 values(值1,值2...),(值1,值2...),(值1,值2...)...;

在開(kāi)發(fā)過(guò)程中添加數(shù)據(jù)的時(shí)間是不建議省略字段名的,這樣降低了代碼的可讀性,使效率下降。下面是添加數(shù)據(jù)的小案例:

查詢表中的所有數(shù)據(jù)的方法是:

select * from 表名;

后面會(huì)用到的。

需求:往下面的tb_user表中添加一條數(shù)據(jù)。

insert into tb_user(id,name) values(2,'李四');

添加成功:

2.修改數(shù)據(jù)

修改表的數(shù)據(jù):

update 表名 set 列名1=值1,列名2=值2...[where 條件];

在修改數(shù)據(jù)時(shí),也可以不使用where條件,此時(shí)的操作是修改整列數(shù)據(jù),這樣的操作是很危險(xiǎn)的。

需求:把下面tb_user表中的張三的密碼改為abc23

update tb_user set passwor d ='abc123' where name='張三';

修改成功:

3.刪除數(shù)據(jù)

刪除表的數(shù)據(jù):

delete from 表名 [where 條件];

在刪除某條數(shù)據(jù)時(shí),如果不使用where條件,將會(huì)導(dǎo)致刪除整個(gè)表的數(shù)據(jù)。

需求:刪除tb_user表中的李四記錄。

delete from tb_user where name='李四';

操作成功:

4.查詢數(shù)據(jù)

下面給出一些SQL語(yǔ)言的DML查詢數(shù)據(jù)的例子:

  • 查詢student表中所有數(shù)據(jù)
SELECT * FROM student;
  • 查詢student表中所有年齡大于等于18歲的學(xué)生數(shù)據(jù)
SELECT * FROM student WHERE age >= 18;
  • 查詢student表中男生(gender為’男’)的平均年齡
SELECT AVG(age) FROM student WHERE gender = '男';
  • 查詢student表中年齡最大的學(xué)生的信息
SELECT * FROM student WHERE age = (SELECT MAX(age) FROM student);
  • 查詢student表中,各性別(gender)的學(xué)生數(shù)量
SELECT gender, COUNT(*) FROM student GROUP BY gender;
  • 查詢student表中,年齡排名前三的學(xué)生的姓名和年齡
SELECT name, age FROM (
    SELECT name, age, RANK() OVER (ORDER BY age DESC) AS rank
    FROM student
) AS tbl WHERE rank <= 3;

上面這些例子涉及到了查詢?nèi)繑?shù)據(jù)、條件查詢、聚合函數(shù)、子查詢、分組和排序等多種查詢方式。在實(shí)際應(yīng)用中,可根據(jù)需要選擇不同的查詢方式來(lái)獲取所需的數(shù)據(jù)。

5.注意事項(xiàng)

  • 在學(xué)習(xí)DML操作時(shí),需要注意以下幾點(diǎn):
  • 注意SQL語(yǔ)句的語(yǔ)法和格式,不要犯錯(cuò)。
  • 在進(jìn)行數(shù)據(jù)修改操作時(shí),一定要謹(jǐn)慎,尤其是DELETE語(yǔ)句,一定要確認(rèn)數(shù)據(jù)刪除的范圍和內(nèi)容。
  • 在進(jìn)行數(shù)據(jù)查詢操作時(shí),要明確查詢的條件和要檢索的列名,以避免不必要的查詢負(fù)擔(dān)。
  • 在進(jìn)行復(fù)雜查詢操作時(shí),要深入理解SQL語(yǔ)言的實(shí)現(xiàn)原理和查詢優(yōu)化技術(shù),以提高數(shù)據(jù)操作效率和質(zhì)量。

6.總結(jié)

學(xué)習(xí)DML操作是學(xué)習(xí)數(shù)據(jù)操作的重要基礎(chǔ)步驟,只有熟練掌握并靈活運(yùn)用DML操作,才能更好地管理和利用數(shù)據(jù)。

到此這篇關(guān)于一文帶你學(xué)透SQL語(yǔ)言的核心之DML操作的文章就介紹到這了,更多相關(guān)SQL語(yǔ)言之DML操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySql如何查看索引并實(shí)現(xiàn)優(yōu)化

    MySql如何查看索引并實(shí)現(xiàn)優(yōu)化

    這篇文章主要介紹了MySql如何查看索引并實(shí)現(xiàn)優(yōu)化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • MySQL數(shù)據(jù)庫(kù)子查詢?sub?query

    MySQL數(shù)據(jù)庫(kù)子查詢?sub?query

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)子查詢?sub?query,子查詢指嵌套查詢下層的程序模塊,當(dāng)一個(gè)查詢是另一個(gè)查詢的條件的時(shí)候,更多相關(guān)內(nèi)容需要的小伙伴可以參考一下下面文章內(nèi)容介紹
    2022-06-06
  • 詳解MySQL誤操作后怎樣進(jìn)行數(shù)據(jù)恢復(fù)

    詳解MySQL誤操作后怎樣進(jìn)行數(shù)據(jù)恢復(fù)

    在大家日常操作數(shù)據(jù)庫(kù)時(shí)候難免會(huì)因?yàn)椤按笠狻倍`操作,那么誤操作后怎樣進(jìn)行數(shù)據(jù)恢復(fù)呢,下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)。
    2016-08-08
  • MySQL一次性創(chuàng)建表格存儲(chǔ)過(guò)程實(shí)戰(zhàn)

    MySQL一次性創(chuàng)建表格存儲(chǔ)過(guò)程實(shí)戰(zhàn)

    這篇文章主要介紹了MySQL一次性創(chuàng)建表格存儲(chǔ)過(guò)程實(shí)戰(zhàn),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • 一文帶你理解MySql中explain結(jié)果filtered

    一文帶你理解MySql中explain結(jié)果filtered

    使用EXPLAIN關(guān)鍵字可以模擬優(yōu)化器執(zhí)行SQL查詢語(yǔ)句,從而知道MySQL是如何處理你的SQL語(yǔ)句的,下面這篇文章主要給大家介紹了關(guān)于MySql中explain結(jié)果filtered的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • MySQL數(shù)據(jù)庫(kù)遭到攻擊篡改(使用備份和binlog進(jìn)行數(shù)據(jù)恢復(fù))

    MySQL數(shù)據(jù)庫(kù)遭到攻擊篡改(使用備份和binlog進(jìn)行數(shù)據(jù)恢復(fù))

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)遭到攻擊篡改(使用備份和binlog進(jìn)行數(shù)據(jù)恢復(fù)),需要的朋友可以參考下
    2016-04-04
  • MySQL 5.7忘記root密碼后修改的詳細(xì)教程

    MySQL 5.7忘記root密碼后修改的詳細(xì)教程

    因?yàn)殚L(zhǎng)時(shí)間不操作mysql而忘記root密碼的朋友估計(jì)不在少數(shù),最近發(fā)現(xiàn)在MySQL 5.7版本下用之前的方法修改密碼不能成功了,所以只能重新想辦法解決,下面這篇文章主要給大家介紹了MySQL 5.7忘記root密碼后修改的詳細(xì)教程,需要的朋友可以參考。
    2017-05-05
  • MySQL優(yōu)化insert性能的方法示例

    MySQL優(yōu)化insert性能的方法示例

    對(duì)于一些數(shù)據(jù)量較大的系統(tǒng),數(shù)據(jù)庫(kù)面臨的問(wèn)題除了查詢效率低下,還有就是數(shù)據(jù)入庫(kù)時(shí)間長(zhǎng)。下面這篇文章主要給大家介紹了關(guān)于MySQL優(yōu)化insert性能的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2018-06-06
  • MySQL處理重復(fù)數(shù)據(jù)的方法

    MySQL處理重復(fù)數(shù)據(jù)的方法

    這篇文章主要介紹了MySQL處理重復(fù)數(shù)據(jù)的方法,處理重復(fù)數(shù)據(jù)包括防止表中出現(xiàn)重復(fù)數(shù)據(jù)、統(tǒng)計(jì)重復(fù)數(shù)據(jù)、過(guò)濾刪除重復(fù)數(shù)據(jù),感興趣的小伙伴們可以參考一下
    2016-02-02
  • MySQL單表存多大的數(shù)據(jù)量比較合適

    MySQL單表存多大的數(shù)據(jù)量比較合適

    MySQL數(shù)據(jù)庫(kù)在處理大規(guī)模數(shù)據(jù)時(shí),性能會(huì)受到影響,這時(shí)候就需要考慮分庫(kù)分表策略,本文就來(lái)介紹一下MySQL單表存多大的數(shù)據(jù)量比較合適,感興趣的可以了解一下
    2024-11-11

最新評(píng)論