SQL語句之INSERT及UPDATE


 1 # INSERT語句寫入一條或多條記錄的語法
 2 INSERT INTO t_dept(deptno,dname,loc) VALUES(50,"技術部","北京");
 3 INSERT INTO t_dept(deptno,dname,loc) VALUES(60,"后勤部","北京"),(70,"保安部","北京");
 4 # 向技術部添加一員工記錄
 5 INSERT INTO t_emp(empno,ename,job,mgr,hiredate,sal,comm,deptno)
  VALUES(8001,"劉娜","SALESMAN",8000,"1988-12-20",2000,NULL,(SELECT deptno FROM t_dept WHERE dname="技術部")); 6 # INSERT方言 7 INSERT INTO t_emp SET empno=8002,ename="JACK",job="SALESMAN",mgr=8000,hiredate="1985-3-14",sal=2500,comm=NULL,deptno=50; 8 # IGNORE關鍵字 9 INSERT IGNORE INTO t_dept(deptno,dname,loc) VALUES(40,"技術部","北京"),(80,"人事部","北京"); 10 # UPDATE每個員工的編號和上司的編號都加1,用ORDER BY子句完成。 11 UPDATE t_emp SET empno=empno+1,mgr=mgr+1 ORDER BY empno DESC; 12 # UPDATE月收入前三的員工底薪減去100元,用LIMIT子句完成。 13 UPDATE t_emp SET sal=sal-100 ORDER BY (sal+IFNULL(comm,0)) DESC LIMIT 3; 14 # 10部門里面工齡超過20年的員工底薪增加200元 15 UPDATE t_emp SET sal=sal+200 WHERE deptno=10 AND DATEDIFF(NOW(),hiredate)/365>=20; 16 # 把ALLEN調往RESEARCH部門,職位改成ANYLYST 17 UPDATE t_emp e JOIN t_dept d SET e.deptno=d.deptno,e.job="ANALYST" WHERE e.ename="ALLEN" AND d.dname="RESEARCH"; 18 # 底薪低於公司平均底薪的員工,底薪增加150 19 UPDATE t_emp e JOIN (SELECT AVG(sal) avg FROM t_emp) t ON e.sal<t.avg SET e.sal=e.sal+150 20 # 把沒有部門的員工或者SALES底薪低於2000的員工都調往20部門 21 UPDATE t_emp e LEFT JOIN t_dept d ON e.deptno=d.deptno SET e.deptno=20 WHERE e.deptno IS NULL OR(d.dname="SALES" AND e.sal<2000);

表連接,表連接還是表連接,重要的事情說三遍


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM