SQLÓÅ»¯
SQLÓÅ»¯34Ìõ
ÎÒÃÇÒª×öµ½²»µ«»áдSQL,»¹Òª×öµ½Ð´³öÐÔÄÜÓÅÁ¼µÄSQL,ÒÔÏÂΪ±ÊÕßѧϰ¡¢ÕªÂ¼¡¢²¢»ã×ܲ¿·Ö×ÊÁÏÓë´ó¼Ò·ÖÏí£¡
£¨1£© Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
ORACLE µÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏÂ,Äã±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í¡£Èç¹ûÓÐ3¸öÒÔÉϵıíÁ¬½Ó²éѯ, ÄǾÍÐèҪѡÔñ½»²æ±í(intersection table)×÷Ϊ»ù´¡±í, ½»²æ±íÊÇÖ¸ÄǸö±»ÆäËû±íËùÒýÓõıí.
£¨2£© WHERE×Ó¾äÖеÄÁ¬½Ó˳Ðò£®£º
ORACLE²ÉÓÃ×Ô϶øÉϵÄ˳Ðò½âÎöWHERE×Ó¾ä,¸ù¾ÝÕâ¸öÔÀí,±íÖ®¼äµÄÁ¬½Ó±ØÐëдÔÚÆäËûWHEREÌõ¼þ֮ǰ, ÄÇЩ¿ÉÒÔ¹ýÂ˵ô×î´óÊýÁ¿¼Ç¼µÄÌõ¼þ±ØÐëдÔÚWHERE×Ó¾äµÄĩβ.
£¨3£© SELECT×Ó¾äÖбÜÃâʹÓà ‘ * ‘£º
ORACLEÔÚ½âÎöµÄ¹ý³ÌÖÐ, »á½«'*' ÒÀ´Îת»»³ÉËùÓеÄÁÐÃû, Õâ¸ö¹¤×÷ÊÇͨ¹ý²éѯÊý¾Ý×ÖµäÍê³ÉµÄ, ÕâÒâζ׎«ºÄ·Ñ¸ü¶àµÄʱ¼ä
£¨4£© ¼õÉÙ·ÃÎÊÊý¾Ý¿âµÄ´ÎÊý£º
ORACLEÔÚÄÚ²¿Ö´ÐÐÁËÐí¶à¹¤×÷: ½âÎöSQLÓï¾ä, ¹ÀËãË÷ÒýµÄÀûÓÃÂÊ, °ó¶¨±äÁ¿ , ¶ÁÊý¾Ý¿éµÈ£»
£¨5£© ÔÚSQL*Plus , SQL*FormsºÍPro*CÖÐÖØÐÂÉèÖÃARRAYSIZE²ÎÊý, ¿ÉÒÔÔö¼Óÿ´ÎÊý¾Ý¿â·ÃÎʵļìË÷Êý¾ÝÁ¿ ,½¨ÒéֵΪ200
£¨6£© ʹÓÃDECODEº¯ÊýÀ´¼õÉÙ´¦Àíʱ¼ä£º
ʹÓÃDECODEº¯Êý¿ÉÒÔ±ÜÃâÖØ¸´É¨ÃèÏàͬ¼Ç¼»òÖØ¸´Á¬½ÓÏàͬµÄ±í.
£¨7£© ÕûºÏ¼òµ¥,ÎÞ¹ØÁªµÄÊý¾Ý¿â·ÃÎÊ£º
Èç¹ûÄãÓм¸¸ö¼òµ¥µÄÊý¾Ý¿â²éѯÓï¾ä,Äã¿ÉÒÔ°ÑËüÃÇÕûºÏµ½Ò»¸ö²éѯÖÐ(¼´Ê¹ËüÃÇÖ®¼äûÓйØÏµ)
£¨8£© ɾ³ýÖØ¸´¼Ç¼£º
×î¸ßЧµÄɾ³ýÖØ¸´¼Ç¼·½·¨ ( ÒòΪʹÓÃÁËROWID)Àý×Ó£º
DELETE from EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID)
from EMP X WHERE X.EMP_NO = E.EMP_NO);
£¨9£© ÓÃTRUNCATEÌæ´úDELETE£º
µ±É¾³ý±íÖеļǼʱ,ÔÚͨ³£Çé¿öÏÂ, »Ø¹ö¶Î(rollback segments ) ÓÃÀ´´æ·Å¿ÉÒÔ±»»Ö¸´µÄÐÅÏ¢. Èç¹ûÄãûÓÐCOMMITÊÂÎñ,ORACLE»á½«Êý¾Ý»Ö¸´µ½É¾³ý֮ǰµÄ״̬(׼ȷµØËµÊǻָ´µ½Ö´ÐÐɾ³ýÃüÁî֮ǰµÄ×´¿ö) ¶øµ±ÔËÓÃTRUNCATEʱ, »Ø¹ö¶Î²»ÔÙ´æ·ÅÈκ
Ïà¹ØÎĵµ£º
SQL:1999Á¬½Ó
SQL:1999Á¬½ÓÔÚÓï·¨ÉϺʹ«Í³µÄORACLEÁ¬½ÓÓÐןܴóµÄ²»Í¬¡£SQL:1999Á¬½ÓµÄÀàÐÍÔÚfromÓï¾äÖÐÖ¸Ã÷¡£ORACLE 9IÖ§³ÖµÄSQL:1999Á¬½Ó°üÀ¨£º
l CROSSÁ¬½Ó
l NATURALÁ¬½Ó
l ......
½ñÌìÎÒÔÚSQL Server 2005ÖÐÓýű¾´´½¨Ò»ÕÅ±í£¬²é×ÊÁÏ·¢ÏÖÓеĽű¾ÖÐ×Ö¶ÎÓмÓ[]ÖзûºÅ£¬ÎÒÎÊÁ˶¬¼¾£¬µÃÖªÊÇÕâ»ØÊ£¬ÓÃ[]µÄ×Ö¶ÎÃû£¬¼´±ãÊÇsql¹Ø¼ü×ÖÒ²¿ÉÒÔ×÷Ϊ×Ö¶ÎÃû£¬²»»á±¨´í¡£
SQL ServerÀïµÄ±íÖÐÌí¼ÓÒ»¸ö×ֶΣ¬È磺timeϵͳ»á×Ô¶¯¼ÓÒ»¶Ô·½À¨ºÅ¼´£º[time] ......
´´½¨×÷Òµ£º
DECLARE @jobid uniqueidentifier, @jobname sysname
SET @jobname = N'×÷ÒµÃû³Æ'
IF EXISTS(SELECT * from msdb.dbo.sysjobs WHERE name=@jobname)
EXEC msdb.dbo.sp_delete_job @job_name=@jobname
EXEC msdb.dbo.sp_add_job
@job_name = @jobname,
@job_id = @jobid OUTPUT
--¶¨Òå×÷Òµ²½Öè
DECLARE ......
SQL¾ÛºÏº¯
±êÇ©£ºsql¾ÛºÏº¯Êý ÔÓ̸
¾ÛºÏº¯Êý£º
1.AVG ·µ»Ø×éÖÐµÄÆ½¾ùÖµ£¬¿ÕÖµ½«±»ºöÂÔ¡£
ÀýÈ磺use northwind // ²Ù×÷northwindÊý¾Ý¿â
Go
Select avg (unitprice) //´Ó±íÖÐÑ¡ÔñÇóunitpriceµÄƽ¾ùÖµ
& ......
±¾ÎÄÒÔIBMµÄ¹ØÏµÊý¾Ý¿â¹ÜÀíϵͳDB2 Universal Database(ͨÓÃÊý¾Ý¿â) °æ±¾7.1Ϊ±³¾°£¬Óë´ó¼Ò¹²Í¬Ì½ÌÖ±àдºÃµÄSQLÓï¾äµÄ¼¼ÇÉ£¬ÒÔÇóDB2Ó¦ÓóÌÐòÒÔÇóDB2Ó¦ÓóÌÐò»ñµÃ¸üÓŵÄÐÔÄÜ¡£
¡¡¡¡µ±ÎÒÃÇÉè¼ÆÒ»¸öеĻò·ÖÎöÒ»¸öÏÖ´æµÄϵͳʱ£¬ÆäÖÐËùÒª¿¼ÂǵÄÒ»¸öÖØÒªÎÊÌâ¾ÍÊÇÓ¦ÓóÌÐòµÄÉè¼ÆÎÊÌâ¡£¼´Ê¹Êý¾Ý¿âÉè¼ÆµÃºÜºÃ¶øÇÒ»¹¾¹ýÓÅ»¯´¦Àí£¬ ......