asp点击按钮sql列求和_SQL 结构化查询语言
SQL特點
SQL是大小寫無關(guān)的,但一般的習(xí)俗是,關(guān)鍵字大寫(SELECT WHERE),用戶自定義的小寫,如表名。
SQL如何注釋, 兩個 -- 開頭,即為注釋。
SQL只用于關(guān)系型數(shù)據(jù)庫,如MySQL,NoSQL數(shù)據(jù)庫,不能用SQL去查詢。
盡管SQL有ISO的標(biāo)準(zhǔn),但各個廠商在實現(xiàn)上,可能有微小的語法區(qū)別,所以遇到這種情況,要看自己所使用的數(shù)據(jù)庫的SQL語法。
什么是關(guān)系型數(shù)據(jù)庫?
關(guān)系型數(shù)據(jù)庫就是數(shù)據(jù)以關(guān)系的形式存儲。
例如下表,這是一張student表,記錄的是學(xué)生的roll_no,name,address,phone,age。
這就是關(guān)系,學(xué)生的名字,學(xué)生的地址,等等。
有一些專業(yè)術(shù)語。
attribute, 屬性,就是用來定義關(guān)系的,如name,age等,
tuple,元組,或叫一組元素,關(guān)系中的每一行叫一個tuple。
tuple的原意是 a structure of data that has several parts
一個有多部分組成的數(shù)據(jù)結(jié)構(gòu)
一個tuple就是一行數(shù)據(jù)
度 degree,有幾個屬性,就叫有幾個度,上面這個表有5個屬性,也就是 5度。
Cardinality這個表有多少行
Column 列。列表示有個屬性的值的集合。下面這就是Roll_no 的列。
查詢語句分為三類
1,DDL Data Definition Language ,數(shù)據(jù)定義語句
用來定義數(shù)據(jù)庫的結(jié)構(gòu),如CREATE TABLE, ADD COLUMN, DROP COLUMN等
2,DML Data Manipulation Language , 數(shù)據(jù)操作語句
操作關(guān)系中的數(shù)據(jù),如 INSERT, DELETE, UPDATE等
3,DQL Data Query Language 數(shù)據(jù)查詢語句
select
通常查詢語句有以下四部分組成
例句1 ,查詢所有學(xué)生的Roll_No和名字
SELECT ROLL_NO, NAME FROM STUDENT;
例句2,查詢ROLL_NO大于2的學(xué)生的Roll_No和名字
SELECT ROLL_NO, NAME FROM STUDENT WHERE ROLL_NO>2;
例句3,如果想要獲取全部屬性,可以使用* 代替 書寫全部的屬性
SELECT * FROM STUDENT
WHERE ROLL_NO>2;
例句4,如果想要以age的升序來排序,可以用order by子句
SELECT * FROM STUDENT ORDER BY AGE;
默認(rèn)是按照升序排列的,所以O(shè)RDER BY AGE等于ORDER BY AGE ASC,
如果要倒序,改為ORDER BY AGE DESC
例句5,如果想要某個值只出現(xiàn)一次,使用DISTINCT
SELECT DISTINCT ADDRESS FROM STUDENT;
AGGRATION FUNCTIONS (聚集函數(shù))
常見的函數(shù)有
count 用來計算有多少行
sum 求屬性的和
還有 min,max,avg可以用,所有的聚集函數(shù),只返回一行數(shù)據(jù)。
GROUP By 用來將數(shù)據(jù)根據(jù)一個屬性或者一組屬性來分組。而且總是和聚集函數(shù)連用。
例句6
SELECT ADDRESS, SUM(AGE) FROM STUDENTGROUP BY (ADDRESS);
SUM(AGE)不是按照所有的年齡求和,而是按照分組后的年齡求和。
例句7
SELECT ROLL_NO, ADDRESS, SUM(AGE) FROM STUDENTGROUP BY (ADDRESS);
這個句子是錯的,應(yīng)為每個地址中的學(xué)生的ROLL_NO是不一樣的,所以select從句后的屬性 應(yīng)該加上聚集函數(shù),讓這個SQL查詢有意義。
所以當(dāng)使用GROUP By的時候,GROUP By中的屬性,可以出現(xiàn)在select中,而不在GROUP By的部分,需要使用集合函數(shù)。
翻譯自:
Structured Query Language (SQL) - GeeksforGeeks?www.geeksforgeeks.org總結(jié)
以上是生活随笔為你收集整理的asp点击按钮sql列求和_SQL 结构化查询语言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html填满剩余空间,html – 标题
- 下一篇: 2异常处理_异常是什么?什么是常用类?