天天看點

sql 某列資料全部為0則不顯示該列_金融資料分析轉行之路—SQL語言(一)

sql 某列資料全部為0則不顯示該列_金融資料分析轉行之路—SQL語言(一)

花了2周左右時間,斷斷續續看完了《SQL基礎教程》,對照《MySQL必知必會》,簡單做個筆記。

一、表的建立

CREATE TABLE 表名
(列名1 資料類型 資料限定條件,
列名2 資料類型 資料限定條件,
...
PRIMARY KEY(列名1,列名2...));
           
資料類型包括:

int smallint tinyint 整數 ,char(size) 容納固定長度的字元串,varchar(size) 容納可變長度的字元串,date(yyyymmddd) 容納日期。

限定條件包括:

NOT NULL: 限制強制列不接受 NULL 值。UNIQUE:限制唯一辨別資料庫表中的每條記錄。CHECK: 限制用于限制列中的值的範圍。DEFAULT:限制用于向列中插入預設值。

二、表的删除

DROP TABLE 表名;
           

三、表的增、删、改、查

(一)增

#1.插入完整的行
INSERT INTO 表名
(列名1,列名2,...,列名n)
VALUES(列值1,列值2,...,列值n);
#建議把列名寫全,一一對應(當然不寫也可以,但如果表結構發生改變,容易發生錯誤)

#2.插入多行
INSERT INTO 表名
(列名2,列名4,...,列名m)
VALUES(列值2,列值4,...,列值m);

#3.插入檢索出的資料
INSERT INTO 表1
(列名1,列名2,...,列名n)
SELECT 列名1,列名2,...,列名n FROM 表2;
#注意前面的列名與後面的列名并不要求一緻
           

(二)删

#1.從表中删除特定的行(注意是删除行,就是删除資料庫的一條記錄,不是删除列)
DELETE FROM 表名 WHERE 條件語句

#2.從表中删除所有行
DELETE FROM 表名
           

(三)改

#1.更新表中特定行
UPDATE 表名 SET 列名1='修改的内容1',
                列名2='修改的内容2',
                ...
 WHERE 條件語句

#2.删除某列的值
UPDATE 表名 SET 列名=NULL WHERE 條件語句
           

(四)查

#1.檢索多列(含1列)
SELECT 列名1,列名2,...,列名n FROM 表名

#2.檢索所有列
SELECT * FROM 表名

#3.檢索不同的行(傳回該列不同的值)
SELECT DISTINCT 列名 FROM 表名

#4.限制結果(傳回第一行或前幾行)
SELECT 列名1,列名2,...,列名n FROM 表名 LIMIT m,n 
#m表示從m開始,n表示要檢索的行數,注意資料的行數從0開始

#5.排序檢索資料
SELECT 列名1,列名2,...,列名n FROM 表名 ORDER BY 列名m

#6.按多個列排序
SELECT 列名1,列名2,...,列名n FROM 表名 ORDER BY 列名m,列名k
#預設升序排列 ASC,降序排列為DESC 
           

繼續閱讀