一、select語句
簡單SQL查詢語句是:
select [ all | distinct ] 或者 select column_list1 as “a” ,select column_list2 as “b”
from
{ table_name|view_name } //表的連接,有三種連接方式,FROM tab_name1 (INNER) JOIN tab_name2 ON tab_name1.col = tab_name2.col
[ where clause ] //此處可以有子查詢,where deptno=(select deptno from dept1 where dname='ACCOUNTING')
[ group by desc/aesc ] //結果以什麼形式展示
[ having clause ] //顯示幾條數據
[ order by clause ] //對查詢結果後的列進行排序
Select *|distinct 字段1,字段2,…… 表達式 from 表名稱[where 條件] //列出表中所有不同值的數據
SELECT Company FROM Orders //表中如果有相同的值,則都會被列
SELECT DISTINCT Company FROM Orders //表中如果有相同的值,這隻會顯示一個
SELECT * FROM Orders //顯示錶中所有的值
//子查詢作爲操作數
SELECT (SELECT id FROM student WHERE id=1) FROM DUAL
//子查詢作爲條件
SELECT * FROM project WHERE tijiaoren>(SELECT 2 FROM DUAL)
//子查詢作爲數據表使用
SELECT * FROM (SELECT * FROM project , student WHERE project.tijiaoren=student.id) a WHERE a.name LIKE '%3%'
//多列比較
SELECT (3,2)<(3,4) FROM DUAL
//笛卡爾積
SELECT * FROM 表名稱1,表名稱2
//內連接(保留兩表中on相匹配的值)
SELECT * FROM 表名稱1 INNER JOIN 表名稱2 ON 表名稱1.字段=表名稱2.字段;
//左外連接(保留表1中的值給表2補null)
SELECT * FROM 表名稱1 LEFT JOIN 表名稱2 ON 表名稱1.字段=表名稱2.字段
//右外連接(保留表2中的值給表1補null)
SELECT * FROM 表名稱1 RIGHT JOIN 表名稱2 ON 表名稱1.字段=表名稱2.字段
//全外連接(保留兩個表的值,分別補null)
SELECT * FROM 表名稱1 LEFT JOIN 表名稱2 ON 表名稱1.字段=表名稱2.字段
二、insert語句
Delete from 表名名稱 [where 條件];
DELETE FROM project WHERE id>11
DELETE FROM project WHERE id=5
1.插入一整條記錄:
Insert into 表名稱(字段) values(數據);
INSERT INTO student(id,NAME) VALUES(1,'學生1');
INSERT INTO student(id,NAME) VALUES(2,'學生2');
2.一次性插入多條記錄:
insert into 表名稱(字段1,字段2,字段3) values(數據1,數據2,數據3),(數據1,數據2,數據3);
INSERT INTO project(pid,pname,tijiaoren) VALUES(12,'項目53',5),(13,'項目55',5);
三、update語句
Update 表名稱 set 字段名=新值[,列名2=新值,…][where 條件];
//將所有偶數項目id的狀態變更爲是
UPDATE project SET zt='是' WHERE MOD(id,2)=0
四、delete語句
delete 語句是數據庫操作語言(dml),這個操作會放到 rollback segement 中,事務提交之後才生效;如果有相應的trigger執行的時候將被觸發。
Delete from 表名 [where 條件];
DELETE FROM project WHERE id>11
DELETE FROM project WHERE id=5