SQL ÃæÊÔÌâ Ò»
ÌâĿһ£º
ÓÐÁ½ÕÅ±í£º²¿Ãűídepartment ²¿ÃűàºÅdept_id ²¿ÃÅÃû³Ædept_name
Ô±¹¤±íemployee Ô±¹¤±àºÅemp_id Ô±¹¤ÐÕÃûemp_name ²¿ÃűàºÅdept_id ¹¤×Êemp_wage
¸ù¾ÝÏÂÁÐÌâĿд³ösql£º
1¡¢Áгö¹¤×Ê´óÓÚ5000µÄÔ±¹¤ËùÊôµÄ²¿ÃÅÃû¡¢Ô±¹¤idºÍÔ±¹¤¹¤×Ê£»
2¡¢ÁгöÔ±¹¤±íÖеIJ¿ÃÅid¶ÔÓ¦µÄÃû³ÆºÍÔ±¹¤id£¨×óÁ¬½Ó£©
3¡¢ÁгöÔ±¹¤´óÓÚµÈÓÚ2È˵IJ¿ÃűàºÅ
4¡¢Áгö¹¤×Ê×î¸ßµÄÔ±¹¤ÐÕÃû
5¡¢Çó¸÷²¿Ãŵį½¾ù¹¤×Ê
6¡¢Çó¸÷²¿ÃŵÄÔ±¹¤¹¤×Ê×ܶî
7¡¢Çóÿ¸ö²¿ÃÅÖеÄ×î´ó¹¤×ÊÖµºÍ×îС¹¤×ÊÖµ£¬²¢ÇÒËüµÄ×îСֵСÓÚ5000£¬×î´óÖµ´óÓÚ10000
8¡¢¼ÙÈçÏÖÔÚÔÚ¿âÖÐÓÐÒ»¸öºÍÔ±¹¤±í½á¹¹ÏàͬµÄ¿Õ±íemployee2,ÇëÓÃÒ»ÌõsqlÓï¾ä½«employee±íÖеÄËùÒԼǼ²åÈëµ½employee2±íÖС£
answer:
1:Áгö¹¤×Ê´óÓÚ5000µÄÔ±¹¤ËùÊôµÄ²¿ÃÅÃû¡¢Ô±¹¤idºÍÔ±¹¤¹¤×Ê£»
select emp_id,emp_wage,dept_name from employee as e inner join department as d on e.dept_id=d.dept_id where e.emp_wage>5000 group by e.emp_id;
2:ÁгöÔ±¹¤±íÖеIJ¿ÃÅid¶ÔÓ¦µÄÃû³ÆºÍÔ±¹¤id£¨×óÁ¬½Ó£©
select dept_name,emp_id from department d left join employee e on e.dept_id=d.dept_id group by e.emp_id;
+------------+--------+
| dept_name | emp_id |
+------------+--------+
| ×Éѯ²¿ | NULL |
| Èí¼þ¿ª·¢²¿ | 1001 |
| Êг¡²ß»®²¿ | 1002 |
| ÏúÊÛ²¿ | 1003 |
| HR | 1004 |
| HR | 1005 |
| HR | 1006 |
| Èí¼þ¿ª·¢²¿ | 1007 |
+------------+--------+
3£ºÁгöÔ±¹¤´óÓÚµÈÓÚ2È˵IJ¿ÃűàºÅ
select dept_name from department d [inner] join employee e on d.dept_id=e.dept_id group by dept_name
having count(e.dept_id) >=2;
&nb
Ïà¹ØÎĵµ£º
²Î¼û¡¶SQL Sever 2005 Êý¾Ý¿â»ù´¡¼°Ó¦Óü¼Êõ½Ì³ÌÓëʵѵ¡· ÖÜÆæ
SQL ServerÖÐÓÐÎåÖÖÔ¼ÊøÀàÐÍ£¬·Ö±ðÊÇCHECKÔ¼Êø¡¢DEFAULTÔ¼Êø¡¢PRIMARY KEYÔ¼Êø¡¢FOREIGN KEYÔ¼ÊøºÍUNIQUEÔ¼Êø¡£
1. CHECKÔ¼Êø£º
CHECKÔ¼ÊøÓÃÓÚÏÞÖÆÊäÈëÒ»Áлò¶àÁеÄÖµµÄ·¶Î§£¬Í¨¹ýÂß¼±í´ïʽÀ´ÅжÏÊý¾ ......
SET TIMING ON | OFF
SQL> set timing on
SQL> select * from emp where empno = 7369;
EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- ----------- ---------- ----------
DEPTNO
----------
7369 SMITH CLERK ......
Çé¿ö£ºÎÒÒÔǰ°²×°¹ýSQL Server 2000£¬Å¶£¬»¹ÓÐSQL Server 2005¡¢MySQLÄØ£¬ºóÀ´ÏµÍ³ÖØ×°ÁË£¬²»¹ýÕâЩӦÓóÌÐò¶¼ÔÚEÅÌÀ²»ÔÚϵͳÅÌÀ¾ÍÔÚ°²×°µÄʱºò³öÏÖÈçÏÂÈý¸ö´íÎó£¬ÔÚ´ËÖð¸ö½â¾ö˵Ã÷ÈçÏ£º
ÎÊÌâÒ»£º
±¨´íÐÅÏ¢£ºÒÔǰµÄij¸ö³ÌÐò°²×°ÒÑÔÚ°²×°¼ÆËã»úÉÏ´´½¨¹ÒÆðµÄÎļþ²Ù×÷¡£ÔËÐа²×°³ÌÐò֮ǰ±ØÐëÖØÐÂÆô¶¯¼ÆËã»ú¡£
½â¾ö·½ ......
1=1»òÕß'a'='a'µÈµÈºãµÈʽÊÇT-SQLÖбí´ïtrueµÄ·½·¨¡£ÒòΪÔÚT-SQLÖÐûÓÐtrueÕâÑùµÄ¹Ø¼ü
×Ö»òÖµ£¬ËùÒÔÐèÒª½èÖúÕâЩºãµÈʽÀ´±í´ïtrueµÄ¸ÅÄî¡£
Ïà¶ÔµÄ£¬Í¬Ñù¿ÉÒÔʹÓÃ1<>1»òÕß1=2µÈÀ´±í´ïfalse¡£
ÔÚÓ¦ÓóÌʽµÄ°²È«ÐÔ·½Ã棬ʹÓÃÕâЩʽ×ÓÊÇSQL×¢ÈëµÄ»ù±¾ÔÀí£¬ËùÒÔÔÚÆ´½ÓSQLÓï¾äµÄʱºòÒª¹ýÂ˸÷ÖÖ¸÷ÑùµÄÃô¸Ð×Ö
·û¡£
µ±È» ......
1. ʹÓõÄÊÇ·þÎñÆ÷Éϵ쬲»ÊDZ¾»úµÄOracle£¬°´ÏÂÃæ×ö¾Í¿ÉÒÔÁË£º
ÉèÖû·¾³±äÁ¿:NLS_LANG£¬¾ßÌåÖµÓÃÏÂÃæ²éѯµÄÖµ:
SELECT 'AMERICAN_AMERICA.' || PROPERTY_VALUE
from DATABASE_PROPERTIES
WHERE PROPERTY_NAME = 'NLS_CHARACTERSET';
2. Èç¹ûÊDZ¾»úµÄOracle¾ÍÐèÒªÔÚOracleµÄ°²×°Ä¿Â¼ÏÂÃæ¸ÄÉèÖãº
......