mysql資料庫初體驗 SQL中的DQL語句

2021-09-17 08:19:28 字數 3137 閱讀 2786

dql語句(data query language)

查詢資料庫中的記錄,關鍵字 select

語法:

select col_name1,col_name2... from tb_name [where where_definition]...

1.3.1. select語句(1)

練習1

建立一張學生成績表,有id、name、chinese、english、math 字段。

(1)、查詢表中所有學生的資訊

select * from student;
(2)、查詢表中所有學生的姓名和對應的英語成績。

select name,english from student;
(3)、過濾表中重複math 成績。

selectdistinct math from student;
**:

create table student(

id int,

name varchar(20),

chinese float,

english float,

math float

);insert into student values(1,'zs',60,70,89);

insert into student values(2,'lisi',61,77,85);

insert into student values(3,'ww',62,73,85);

insert into student values(4,'ll',63,72,84);

insert into student values(5,'zq',64,73,87);

insert into student values(6,'wb',65,73,83);

insert into student values(7,'jj',66,76,82);

1.3.2. select 語句(2)

expression : mysql支援表示式 加減乘除;

as: 表示給某一列起別名;並且as 可以省略;

練習:(1).在所有學生數學分數上加10分特長分。

select name,math+10 from student; # 原表資料不會改變。
(2).統計每個學生的總分。

select name,chinese+english+math from student;
(3).使用別名表示學生分數

select name as 姓名,chinese+english+math 總分 from student;

1.3.3. select 語句(3)

使用where 語句進行過濾查詢

練習:(1).查詢姓名為王五的學生成績

select * from student where name='王五';
(2).查詢英語成績大於90分的同學

select * from student where english>90;

(3).查詢總分大於200分的所有同學

select * from student where (chinese+english+math)>200;
1.3.4 select 語句(4)

在where語句中經常使用的運算子

練習(1).查詢英語分數在 70-75之間的同學。

select * from student where english between 70 and 75;
(2).查詢數學分數為80,81,82的同學。

select * from student where math in (89,90,91);
(3).查詢所有姓李的學生成績。

select * from student where name like 'l%';
(4).查詢數學分》80並且語文分》80的同學。

select * from student where math>80 and chinese>80;
1.3.5 select 語句(5)

使用order by 子句對結果集進行排序

語法:

select column1,column2,… from table order by column asc|desc;
注:

order by column : 對那一列進行排序

asc: 公升序(預設), desc: 降序

練習(1).對數學成績排序後輸出。

select name,math from student order by math;
(2).對總分排序後輸出,然後再按從高到低的順序輸出

select name as 姓名,chinese+english+math 總分 from student order by 總分 desc;
(3).對姓l的學生成績排序輸出

select * from student where name like 'l%' order by chinese;
1.3.6 select 語句(6)

select col_name1,col_name2... from tb_name limit
練習:

(1)、顯示student **中的前3行。

select * from student limit 3;
注: 3 表示 顯示前3行。

(2)、顯示 student **中的第3~5行。

select * from student limit 2,3;
注: 2表示偏移幾行,3表示顯示的總行數。

mysql資料庫 sql語言初體驗DDL語句

sql語言 sql語句分類 dql data query language資料查詢語言 dml data manipulation language資料操作語言 ddl data definition language資料定義語言 dcl 資料控制語言 tpl 事務處理語言 ccl 指標控制語言 d...

資料庫初體驗

資料庫也是一門藝術,一門說深不深 說淺不淺的一門學問,其實它的名字 資料庫 就已經告訴我們它的本質屬性了。很簡單,就是對資料的使用 儲存。相比較以前我們學到的vb以及其他語言的程式設計知識,還很侷限,相應的和資料庫勾聯使得其功能更加強大,生存能力更強了,說的白一點,我們的應用程式腦容量打了 胃口也大...

資料庫之初體驗

資料庫 一 手頭專案需要根據資料庫的某幾個欄位去重,學習了幾種方法,執行速度差距很大.1.用兩重迴圈將資料寫入另一張表,資料量大的時候速度果然慢的不行不行的 樓主測試一萬多條資料時,十分鐘過去了還在跑,完全忍不了啊 2.用事務處理 樓主測試三萬多條資料時,5秒左右導完,兩分鐘基本上能關聯上並更新相關...