ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
¸»Ê¿¿µÐ¡ËµÍø ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

SQLÓïÑÔÒÕÊõ(PDF¸ñʽ)-µÚ4²¿·Ö

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡



¸ñ×ñÑ­ÒÑÖƶ©ºÃµÄ¸÷¹¦Äܲ½Ö裬ÏÂÃæÊǸöÕæʵµÄÀý×Ó£º¡¡



¡¡¡­Get¡¡the¡¡start¡¡of¡¡the¡¡accounting¡¡period¡¡

¡¡select¡¡closure_date¡¡

¡¡into¡¡dtPerSta¡¡

¡¡from¡¡tperrslt¡¡

¡¡where¡¡fiscal_year=to_char£¨Param_dtAcc£»'YYYY'£©¡¡

¡¡and¡¡rslt_period='1'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£»¡¡



¡¡¡­Get¡¡the¡¡end¡¡of¡¡the¡¡period¡¡out¡¡of¡¡closure¡¡

¡¡select¡¡closure_date¡¡

¡¡into¡¡dtPerClosure¡¡

¡¡from¡¡tperrslt¡¡

¡¡where¡¡fiscal_year=to_char£¨Param_dtAcc£»'YYYY'£©¡¡

¡¡and¡¡rslt_period='9'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£»¡¡



¾ÍËãËٶȿÉÒÔ½ÓÊÜ£¬ÕâÒ²ÊǶμ«ÔãµÄ´úÂë¡£ºÜ²»ÐÒ£¬ÐÔÄÜר¼Ò¾­³£Óöµ½ÕâÖÖÔã¸âµÄ´úÂë¡£¼ÈÈ»¡¡

Á½¸öÖµÀ´×ÔÓÚͬһ±í£¬ÎªÊ²Ã´Òª·Ö±ðÓÃÁ½¸ö²»Í¬µÄÓï¾äÄØ£¿ÏÂÃæÓÃOracleµÄbulk¡¡collect×Ӿ䣬¡¡

Ò»´ÎÐÔ½«Á½¸öÖµ·Åµ½Êý×éÖУ¬ÕâºÜÈÝÒ×ʵÏÖ£¬¹Ø¼üÔÚÓÚ¶Ôrslt_period½øÐÐorder¡¡by²Ù×÷£¬ÈçÏÂËù¡¡

ʾ£º¡¡

¡¡¡¡¡¡select¡¡closure_date¡¡

¡¡¡¡¡¡bulk¡¡collect¡¡into¡¡dtPerStaArray¡¡

¡¡¡¡¡¡from¡¡tperrslt¡¡

¡¡¡¡¡¡where¡¡fiscal_year=to_char£¨Param_dtAcc£»'YYYY'£©¡¡

¡¡¡¡¡¡and¡¡rslt_period¡¡in¡¡£¨'1'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£»¡¡

¡¡¡¡¡¡'9'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£©¡¡

¡¡¡¡¡¡order¡¡by¡¡rslt_period£»¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡26¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÓÚÊÇ£¬ÕâÁ½¸öÈÕÆÚ±»·Ö±ð±£´æÔÚÊý×éµÄµÚÒ»¸öºÍµÚ¶þ¸öλÖá£ÆäÖУ¬bulkcollect¡¡ÊÇ¡¡PL/SQL¡¡Óï¡¡

ÑÔÌØÓеģ¬µ«ÈκÎÖ§³ÖÏÔʽ»òÒþʽÊý×éÌáÈ¡µÄÓïÑÔ¶¼¿ÉÈç·¨ÅÚÖÆ¡£¡¡



ÆäʵÉõÖÁÊý×鶼ÊDz»±ØÒªµÄ£¬ÓÃÒÔϵÄС¼¼ÇÉ£¨×¢6£©£¬ÕâÁ½¸öÖµ¾Í¿ÉÒÔ±»ÌáÈ¡µ½Á½¸ö±äÁ¿ÖУº¡¡



¡¡¡¡¡¡select¡¡max£¨decode£¨substr£¨rslt_period£»¡¡1£»¡¡1£©£»¡¡¡­Check¡¡the¡¡first¡¡character¡¡

¡¡¡¡¡¡'1'£»¡¡closure_date£»¡¡

¡¡¡¡¡¡¡­If¡¡it's¡¡'1'¡¡return¡¡the¡¡date¡¡we¡¡want¡¡

¡¡¡¡¡¡to_date£¨'14/10/1066'£»¡¡'DD/MM/YYYY'£©£©£©£»¡¡

¡¡¡¡¡¡¡­Otherwise¡¡something¡¡old¡¡

¡¡¡¡¡¡max£¨decode£¨substr£¨rslt_period£»¡¡1£»¡¡1£©£»¡¡

¡¡¡¡¡¡'9'£»¡¡closure_date£»¡¡¡­The¡¡date¡¡wewant¡¡

¡¡¡¡¡¡to_date£¨'14/10/1066'£»¡¡'DD/MM/YYYY'£©£©£©£»¡¡

¡¡¡¡¡¡into¡¡dtPerSta£»¡¡dtPerClosure¡¡

¡¡¡¡¡¡from¡¡tperrslt¡¡

¡¡¡¡¡¡where¡¡fiscal_year=to_char£¨Param_dtAcc£»'YYYY'£©¡¡

¡¡¡¡¡¡and¡¡rslt_period¡¡in¡¡£¨'1'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£»¡¡

¡¡¡¡¡¡'9'¡¡£ü£ü¡¡to_char£¨Param_dtAcc£»'MM'£©£©£»¡¡



ÔÚÕâ¸öÀý×ÓÖУ¬Ô¤ÆÚ·µ»ØֵΪÁ½ÐÐÊý¾Ý£¬ËùÒÔÎÊÌâÊÇ£ºÈçºÎ°ÑÔ­±¾ÊôÓÚÒ»¸ö×ֶεÄÁ½ÐÐÊý¾Ý£¬¡¡

ÒÔÒ»ÐÐÊý¾ÝÁ½¸ö×ֶεķ½Ê½¼ìË÷³öÀ´£¨ÕýÈçÊý×éÌáÈ¡µÄÀý×ÓÒ»Ñù£©¡£Îª´Ë£¬ÎÒÃÇ¡¡



¼ì²érslt_period×ֶΣ¬Á½ÐÐÊý¾ÝµÄrslt_period×Ö¶ÎÓв»Í¬Öµ£»Èç¹ûÕÒµ½ÐèÒªµÄ¼Ç¼£¬¾Í·µ»ØÒªÕÒ¡¡

µÄÈÕÆÚ£»·ñÔò£¬¾Í·µ»ØÒ»¸öÔÚÈκÎÇé¿ö϶¼Ô¶±ÈÎÒÃÇËùÐèÈÕÆÚÒªÔçµÄÈÕÆÚ£¨´Ë´¦Ñ¡Á˹þ˹¶¡Ö®¡¡

ÒÛ£¨battle¡¡of¡¡Hastings£©µÄÈÕÆÚ£©¡£Ö»ÒªÃ¿´ÎÈ¡³ö×î´óÖµ£¬¾Í¿ÉÒÔÈ·±£»ñµÃÐèÒªµÄÈÕÆÚ¡£ÕâÊǸö¡¡

·Ç³£ÊµÓõļ¼ÇÉ£¬Ò²¿ÉÒÔÓ¦ÓÃÔÚ×Ö·û»òÊýÖµÊý¾Ý£¬µÚ11Õ»áÓиüÏêϸµÄ˵Ã÷¡£¡¡



×ܽ᣺SQLÊÇÉùÃ÷ÐÔÓïÑÔ£¨declarative¡¡language£©£¬ËùÒÔÉ跨ʹÄãµÄ´úÂ볬ԽҵÎñ¹ý³ÌµÄ¹æ¸ñ¡¡

˵Ã÷¡£¡¡



SQL¡¡

SSQQLLµÄ½ø¹¥Ê½±à³Ì¡¡



Offensive¡¡Coding¡¡with¡¡SQL¡¡



Ò»°ãµÄ½¨ÒéÊǽøÐзÀÓùʽ±à³Ì£¨code¡¡defensively£©£¬ÔÚ¿ªÊ¼´¦Àí֮ǰÏȼì²éËùÓвÎÊýµÄºÏ·¨ÐÔ¡£¡¡

µ«Êµ¼ÊÉÏ£¬¶ÔÊý¾Ý¿â±à³Ì¶øÑÔ£¬¾¡Á¿Í¬Ê±×ö¼¸¼þÊÂÇéµÄ½ø¹¥Ê½±à³ÌÓÐÇÐʵµÄÓÅÊÆ¡£¡¡



ÓиöºÜºÃµÄÀý×Ó£º½øÐÐÒ»Á¬´®¼ì²é£¬Ã¿µ±ÆäÖÐÒ»¸ö¼ì²éËùÒªÇóµÄÌõ¼þ²»·ûʱ¾Í²úÉúÒì³£¡£ÐÅÓá¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡27¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¿¨¸¶¿îµÄ´¦ÀíÖоÍÉæ¼°ÀàËƲ½Öè¡£ÀýÈ磬¼ì²éËùÌá½»µÄ¿Í»§Éí·ÝºÍ¿¨ºÅÊÇ·ñÓÐЧ£¬ÒÔ¼°Á½ÕßÊÇ¡¡

·ñÆ¥Å䣻¼ì²éÐÅÓÿ¨ÊÇ·ñ¹ýÆÚ£»×îºó£¬¼ì²éµ±Ç°µÄÖ§¸¶¶îÊÇ·ñ³¬¹ýÁËÐÅÓöî¶È¡£Èç¹ûͨ¹ýÁËËù¡¡

Óмì²é£¬Ö§¸¶²Ù×÷²Å¼ÌÐø½øÐС£¡¡



ΪÁËÍê³ÉÉÏÊö¹¦ÄÜ£¬²»ÊìÁ·µÄ¿ª·¢Õß»áд³öÏÂÁÐÓï¾ä£¬²¢¼ì²éÆä·µ»Ø½á¹û£º¡¡



¡¡¡¡¡¡select¡¡count£¨*£©¡¡

¡¡¡¡¡¡from¡¡customers¡¡

¡¡¡¡¡¡where¡¡customer_id¡¡=¡¡provided_id¡¡



½ÓÏÂÀ´£¬Ëû»á×öÀàËƵŤ×÷£¬²¢ÔÙÒ»´Î¼ì²é´íÎó´úÂ룺¡¡



¡¡¡¡¡¡¡¡select¡¡card_num£»¡¡expiry_date£»¡¡credit_limit¡¡

¡¡¡¡¡¡¡¡from¡¡accounts¡¡

¡¡¡¡¡¡¡¡where¡¡customer_id¡¡=¡¡provided_id¡¡



Ö®ºó£¬Ëû²Å»á´¦Àí½ðÈÚ½»Òס£¡¡



Ïà·´£¬ÊìÁ·µÄ¿ª·¢Õ߸üϲ»¶ÏñÏÂÃæÕâÑù±àд´úÂ루¼ÙÉètoday£¨£©·µµ±Ç°ÈÕÆÚ£©£º¡¡

¡¡¡¡update¡¡accounts¡¡

¡¡¡¡set¡¡balance¡¡=¡¡balance¡¡purchased_amount¡¡

¡¡¡¡where¡¡balance¡¡¡·=¡¡purchased_amount¡¡

¡¡¡¡and¡¡credit_limit¡¡¡·=¡¡purchased_amount¡¡

¡¡¡¡and¡¡expiry_date¡¡¡·¡¡today£¨£©¡¡

¡¡¡¡and¡¡customer_id¡¡=¡¡provided_id¡¡

¡¡¡¡and¡¡card_num¡¡=¡¡provided_cardnum¡¡

½Ó×Å£¬¼ì²é±»¸üеÄÐÐÊý¡£Èç¹û½á¹ûΪ¡¡0£¬Ö»ÐèÖ´ÐÐÏÂÃæµÄÒ»¸ö²Ù×÷¼´¿ÉÅжϳö´íÔ­Òò£º¡¡

¡¡¡¡select¡¡c¡£customer_id£»¡¡a¡£card_num£»¡¡a¡£expiry_date£»¡¡

¡¡¡¡a¡£credit_limit£»¡¡a¡£balance¡¡

¡¡¡¡from¡¡customers¡¡c¡¡

¡¡¡¡leftouter¡¡join¡¡accounts¡¡a¡¡

¡¡¡¡on¡¡a¡£customer_id¡¡=¡¡c¡£customer_id¡¡

¡¡¡¡and¡¡a¡£card_num¡¡=¡¡provided_cardnum¡¡

¡¡¡¡where¡¡c¡£customer_id¡¡=¡¡provided_id¡¡



Èç¹û´Ë²éѯûÓзµ»ØÊý¾Ý£¬Ôò¿É¶Ï¶¨customer_id¡¡µÄÖµÊÇ´íµÄ£»Èç¹û¡¡card_num¡¡ÊÇ¡¡null£¬Ôò¿É¡¡

¶Ï¶¨¿¨ºÅÊÇ´íµÄ£»µÈµÈ¡£Æäʵ£¬¶àÊýÇé¿öÏ´˲éѯÎÞÐè±»Ö´ÐС£¡¡



×¢Òâ¡¡



ÄãÊÇ·ñ×¢Òâµ½£¬ÉÏÊöµÚÒ»¶Î´úÂëÖÐʹÓÃÁËcount£¨*£©ÄØ£¿ÕâÊǸöcount£¨*£©±»ÎóÓÃÓÚ´æÔÚÐÔ¼ì²âµÄ¾ø¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡28¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¼ÑÀý×Ó¡£¡¡

¡°½ø¹¥Ê½±à³Ì¡±µÄ±¾ÖÊÌØÕ÷ÊÇ£ºÒÔºÏÀíµÄ¿ÉÄÜÐÔ£¨reasonableprobabilities£©Îª»ù´¡¡£ÀýÈ磬¼ì²é¡¡

¿Í»§ÊÇ·ñ´æÔÚÊǺÁÎÞÒâÒåµÄ¡ª¡ªÒòΪ¼ÈÈ»¸Ã¿Í»§²»´æÔÚ£¬ÄÇôËûµÄ¼Ç¼¸ù±¾¾Í²»ÔÚÊý¾Ý¿âÖУ¡¡¡

ËùÒÔ£¬Ó¦¸ÃÏȼÙÉèûÓÐÊÂÇé»á³ö´í£»µ«Èç¹û³ö´íÁË£¬¾ÍÔÚ³ö´íµÄµØ·½£¨¶øÇÒÖ»ÔÚÄǸöµØ·½£©²É¡¡

È¡ÏàÓ¦´ëÊ©¡£ÓÐȤµÄÊÇ£¬ÕâÖÖ·½·¨ºÜÏñһЩÊý¾Ý¿âϵͳÖвÉÓõġ°ÀÖ¹Û²¢·¢¿ØÖÆ£¨optimistic¡¡

concurrency¡¡control£©¡±£¬ºóÕß»á¼ÙÉèupdate³åÍ»²»»á·¢Éú£¬Ö»ÔÚ³åÍ»ÕæµÄ·¢Éúʱ²Å½øÐпØÖÆ´¦Àí¡£¡¡

½á¹û£¬ÀÖ¹Û·½·¨±È±¯¹Û·½·¨µÄÍÌÍÂÁ¿¸ßµÃ¶à¡£¡¡



×ܽ᣺ÒÔ¸ÅÂÛΪ»ù´¡½øÐбà³Ì¡£¼ÙÉè×î¿ÉÄܵĽá¹û£»²»ÊǵÄÈ·±ØÒª£¬²»Òª²ÉÓÃÒì³£²¶×½µÄ´¦Àí¡¡

·½Ê½¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Exceptions¡¡

¾«Ã÷µØʹÓÃÒì³££¨EExxcceeppttiioonnss£©¡¡



Discerning¡¡Use¡¡of¡¡Exceptions¡¡



Ó¸ÒÓë³çµÄ½çÏߺÜÄ£ºý£¬ÎÒ½¨Òé½ø¹¥Ê½±à³Ì£¬µ«²¢²»ÊÇÒªÄãÄ£·ÂÇá²½±øÂÃÔÚBalaclavaµÄ×Ôɱ¡¡

ÐÔ³å·æ£¨×¢7£©¡£Õë¶ÔÒì³£±à³Ì£¬×îÖÕ¿ÉÄÜÂäµÃÐéÕÅÉùÊƵÄÓÞ´À½á¹û£¬µ«×Ô¸ºµÄ¿ª·¢Õß»¹ÊǶÔËü¡°ÍÆ¡¡

³ç±¸ÖÁ£¨go¡¡for¡¡it£©¡±£¬²¢¼áÐżì²éºÍ´¦ÀíÒì³£ÄÜʹËûÃÇÍê³ÉÈÎÎñ¡£¡¡



ÕýÈçÆäÃû×ÖËù°µÊ¾µÄ£¬Òì³£Ó¦¸ÃÊÇÄÇЩÀýÍâÇé¿ö¡£¶ÔÊý¾Ý¿â±à³ÌµÄ¾ßÌåÇé¿ö¶øÑÔ£¬²»ÊÇËùÓÐÒì¡¡

³£¶¼ÒªÇóͬÑùµÄ´¦Àí·½Ê½¡ª¡ªÕâÊÇÀí½âÒì³£µÄʹÓÃÊÇ·ñÃ÷ÖǵĹؼüµã¡£ÓÐЩÊÇ¡°ºÃ¡±Òì³££¬Ó¦Ô¤¡¡

ÏÈÅ׳ö£»ÓÐЩÊÇ¡°»µ¡±Òì³££¬½öµ±ÕæÕýµÄÔÖº¦·¢Éúʱ²ÅÅ׳ö¡£¡¡



ÀýÈ磬ÒÔÖ÷¼üΪÌõ¼þ½øÐвéѯʱ£¬Èç¹ûûÓнá¹û·µ»ØÔò¿ªÏú¼«ÉÙ£¬ÒòΪֻÐè¼ì²éË÷Òý¼´¿ÉÅжϡ£¡¡

È»¶ø£¬Èç¹û²éѯÎÞ·¨Ê¹ÓÃË÷Òý£¬¾Í±ØÐëËÑË÷Õû¸ö±í¡ª¡ªµ±´Ë±íÊý¾ÝÁ¿ºÜ´ó£¬ËùÔÚ»úÆ÷ÓÖÕýÔÚ½Ó¡¡

½üÂú¸ººÉ¹¤×÷ʱ£¬¿ÉÄÜÔì³ÉÔÖÄÑ¡£¡¡



ÓÐЩÒì³£µÄ´¦Àí´ú¼Û¸ß°º£¬¼´Ê¹ÊÇÔÚ×î¼ÑÇé¿öÏÂÒ²²»ÀýÍ⣬ÀýÈçÖظ´¼ü£¨duplicate¡¡key£©µÄ̽¡¡

²â¡£¡°Î¨Ò»ÐÔ£¨uniqueness£©¡±ÈçºÎ±£Ö¤ÄØ£¿ÎÒÃǼ¸ºõ×ÜÊǽ¨Á¢Ò»¸öΨһÐÔË÷Òý£¬Ã¿´ÎÏò¸ÃË÷ÒýÔö¡¡

¼ÓÒ»¸ö¼üʱ£¬¶¼Òª¼ì²éÊÇ·ñÎ¥·´Á˸ÃΨһÐÔË÷ÒýµÄÔ¼Êø¡£È»¶ø£¬½¨Á¢Ë÷ÒýÏîÐèÒª¼Ç¼ÎïÀíµØÖ·£¬¡¡

ÓÚÊǾÍÒªÇóÏȽ«¼Ç¼²åÈë±í£¬ºó½«Ë÷ÒýÏî²åÈëË÷Òý¡£Èç¹ûÎ¥·´´ËÔ¼Êø£¬Êý¾Ý¿â»áÈ¡Ïû²»ÍêÈ«µÄ¡¡

²åÈ룬²¢·µ»ØÎ¥·´Ô¼ÊøµÄ´íÎóÐÅÏ¢¡£ÉÏÊöÕâЩ²Ù×÷¿ªÏú¾Þ´ó¡£µ«×î´óµÄÎÊÌâÊÇ£¬Õû¸ö´¦Àí±ØÐë¡¡

ΧÈƸö±ðÒì³£Õ¹¿ª£¬ÓÚÊÇÎÒÃDZØÐë¡°´Ó¸ö±ð¼Ç¼µÄ½Ç¶È½øÐÐ˼¿¼¡±£¬¶ø²»ÊÇ¡°´ÓÊý¾Ý¼¯³ö·¢½øÐÐ˼¡¡

¿¼¡±£¬ÕâÓë¹ØϵÊý¾Ý¿âÀíÂÛÍêÈ«±³µÀ¶ø³Û¡£¶à´ÎÎ¥·´´ËÔ¼Êø»áµ¼ÖÂÐÔÄÜÑÏÖØϽµ¡£¡¡



À´¿´Ò»¸ö¡¡Oracle¡¡µÄÀý×Ó¡£¼ÙÉèÔÚÁ½¼Ò¹«Ë¾ºÏ²¢ºó£¬µç×ÓÓʼþµØÖ·¶¨ÎªµÄ±ê×¼¡¡

¸ñʽ£¬×î¶à¡¡12¡¡¸ö×Ö·û£¬ËùÓпոñ»òÒýºÅÒÔÏ»®Ïß´úÌæ¡£¡¡



Èç¹ûеÄemployee±íÒѾ­½¨ºÃ£¬²¢°üº¬3¡¡000¡¡Ìõ´Óemployee_old±íÖÐÌáÈ¡²¢½øÐбê×¼»¯´¦ÀíµÄ¡¡

µç×ÓÓʼþµØÖ·¡£ÎÒÃÇÏ£Íûÿ¸öÔ±¹¤µÄµç×ÓÓʼþµØÖ·¾ßÓÐΨһÐÔ£¬ÓÚÊÇFernando¡¡LopezµÄµØַΪ¡¡

flopez£¬¶øFrancisco¡¡LopezµÄµØַΪflopez2¡£Êµ¼ÊÉÏ£¬ÎÒÃÇʵ¼Ê²âÊÔµÄÊý¾ÝÖÐÓÐ33¡¡¸öDZÔڵġ¡

Öظ´ÏËùÒÔÎÒÃÇÐèÒª×öÈçϲâÊÔ£º¡¡

¡¡¡¡SQL¡·¡¡insert¡¡into¡¡employees£¨emp_num£»¡¡emp_name£»¡¡

¡¡¡¡emp_firstname£»¡¡emp_email£©¡¡

¡¡¡¡2¡¡select¡¡emp_num£»¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡29¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡3¡¡¡¡¡¡¡¡¡¡¡¡emp_name£»¡¡

¡¡¡¡4¡¡¡¡¡¡¡¡¡¡¡¡emp_firstname£»¡¡

¡¡¡¡5¡¡¡¡¡¡¡¡¡¡¡¡substr£¨substr£¨EMP_FIRSTNAME£»¡¡1£»¡¡1£©¡¡

¡¡¡¡6¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ü£ütranslate£¨EMP_NAME£»¡¡'¡¡'''£»¡¡'_¡¡_'£©£»¡¡1£»¡¡12£©¡¡

¡¡¡¡7¡¡from¡¡employees_old£»¡¡



¡¡¡¡insert¡¡into¡¡employees£¨emp_num£»¡¡emp_name£»¡¡emp_firstname£»¡¡emp_email£©¡¡



¡¡¡¡*¡¡

¡¡¡¡ERROR¡¡at¡¡line¡¡1£º¡¡

¡¡¡¡ORA¡­00001£º¡¡unique¡¡constraint¡¡£¨EMP_EMAIL_UQ£©¡¡violated¡¡



¡¡¡¡Elapsed£º¡¡00£º00£º00¡£85¡¡



3¡¡000¡¡ÌõÊý¾ÝÖÐÖظ´¡¡33¡¡Ìõ£¬±ÈÂÊ´óÔ¼ÊÇ¡¡1£¥£¬ËùÒÔ£¬»òÐí¿ÉÒÔÐÄ°²ÀíµÃµØ´¦Àí·ûºÏ±ê×¼µÄ¡¡

99£¥£¬²¢ÓÃÒì³£À´´¦ÀíÆäÓಿ·Ö¡£±Ï¾¹£¬1£¥¡¡µÄ²»·û±ê×¼Êý¾Ý´øÀ´µÄÒì³£´¦Àí¿ªÏúÓ¦¸Ã²»´ó¡£¡¡



µ«Õâ¸öÒì³£´¦ÀíµÄ¿ªÏúµ½µ×ÔÚÄÄÀïÄØ£¿ÈÃÎÒÃÇÏÈ´Ó²âÊÔÊý¾ÝÖÐÌÞ³ý¡°ÎÊÌâ¼Ç¼¡±£¬È»ºóÔÙÖ´ÐÐÏà¡¡

ͬµÄ²âÊÔ£¬±È½Ï·¢ÏÖ£ºÕâ´Î²âÊÔµÄ×ÜÔËÐÐʱ¼ä£¬ÓëÉϴμ¸ºõÏàͬ£¬¶¼ÊÇ18¡¡Ã롣Ȼ¶ø£¬´Ó²âÊÔÊý¡¡

¾ÝÖÐÌÞ³ý¡°ÎÊÌâ¼Ç¼¡±Ö®ºóÔÙÖ´ÐÐÇ°ÃæµÚÒ»¶Î¡¡insert¡£¡£¡£select¡¡Óï¾äʱ£¬ËÙ¶ÈÃ÷ÏÔ±ÈÑ­»·¿ì£º×îÖÕ·¢¡¡

ÏÖ²ÉÓá°Ò»´Î´¦ÀíÒ»ÐС±µÄ·½Ê½µ¼ÖºÄʱÔö¼ÓÁ˽ü¡¡50£¥¡£ÄÇô£¬ÔÚ´ËÀýÖпÉÒÔ²»Óá°Ò»´Î´¦ÀíÒ»¡¡

ÐС±µÄ·½Ê½Â𣿿ÉÒÔ£¬µ«ÒªÊ×ÏȱÜÃâʹÓÃÒì³£¡£ÕýÊÇÕâ¸öͨ¹ýÒì³£´¦Àí½â¾ö¡°ÎÊÌâ¼Ç¼¡±ÎÊÌâ¾ö¶¨£¬¡¡

ÆÈʹÎÒÃDzÉÓÃÑ­Ðò·½Ê½µÄ¡£¡¡



ÁíÍ⣬ÓÉÓÚ·¢Éú³åÍ»µÄµç×ÓÓʼþµØÖ·¿ÉÄܲ»Ö¹Ò»¸ö£¬¿ÉÒÔΪËüÃÇÖ¸¶¨Ä³¸öÊý×Ö»ñµÃΨһÐÔ¡£¡¡



ºÜÈÝÒ×ÅжÏÓжàÉÙ¸öÊý¾Ý¼Ç¼·¢ÉúÁ˳åÍ»£¬Ôö¼Ó¡¡Ò»¸ögroupby×Ó¾ä¾Í¿ÉÒÔÁË¡£µ«ÔÚ·ÖÅäÊý×Öʱ£¬¡¡

Èç¹û²»Ê¹ÓÃÖ÷Êý¾Ý¿âϵͳÌṩµÄ·ÖÎö¹¦ÄÜ£¬¿ÖűȽÏÀ§ÄÑ¡££¨Oracle¡¡³ÆΪ·ÖÎö¹¦ÄÜ£¨analytical¡¡

function£©£¬¡¡DB2¡¡Ôò³ÆÔÚÏß·ÖÎö´¦Àí£¨online¡¡analyticalprocessing£¬OLAP£©£¬SQLServer¡¡³Æ֮ΪÅÅ¡¡

Ãû¹¦ÄÜ£¨ranking¡¡function£©¡££©´¿´â´ÓSQL½Ç¶ÈÀ´¿´£¬Ì½Ë÷´ËÎÊÌâµÄ½â¾ö·½°¸ºÜÓÐÒâÒå¡£¡¡



Öظ´µÄµç×ÓÓʼþµØÖ·¶¼¿ÉÒÔ±»¸³ÓèÒ»¸ö¾ßΨһÐÔµÄÊý×Ö£º1¸³¸øÄê¼Í×î´óµÄÔ±¹¤£¬2¡¡¸³¸øÄê¼Í´Î¡¡

Ö®µÄµÄÔ±¹¤¡­¡­ÒÀ´ÎÀàÍÆ¡£Îª´Ë£¬¿ÉÒÔ±àдһ¸ö×Ó²éѯ£¬Èç¹ûÊÇgroupÖеĵÚÒ»¸öµç×ÓÓʼþµØÖ·¡¡

¾Í²»×÷²Ù×÷£¬¶ø¸ÃgroupÖеĺóÐøµç×ÓÓʼþµØÖ·Ôò¼ÓÉÏÐòºÅ¡£´úÂëÈçÏ£º¡¡



¡¡¡¡¡¡SQL¡·insert¡¡into¡¡employees£¨emp_num£»¡¡emp_firstname£»¡¡

¡¡¡¡¡¡2¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡emp_name£»¡¡emp_email£©¡¡

¡¡¡¡¡¡3¡¡select¡¡emp_num£»¡¡

¡¡¡¡¡¡4¡¡¡¡¡¡¡¡emp_firstname£»¡¡

¡¡¡¡¡¡5¡¡¡¡¡¡¡¡emp_name£»¡¡

¡¡¡¡¡¡6¡¡¡¡¡¡¡¡decode£¨rn£»¡¡1£»emp_email£»¡¡

¡¡¡¡¡¡7¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡substr£¨emp_email£»¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡30¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡8¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡1£»12¡­length£¨ltrim£¨to_char£¨rn£©£©£©£©¡¡

¡¡¡¡¡¡9¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ü£ültrim£¨to_char£¨rn£©£©£©¡¡

¡¡¡¡¡¡10¡¡from¡¡£¨select¡¡emp_num£»¡¡

¡¡¡¡¡¡11¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡emp_firstname£»¡¡

¡¡¡¡¡¡12¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡emp_name£»¡¡

¡¡¡¡¡¡13¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡substr£¨substr£¨emp_firstname£»¡¡1£»1£©¡¡

¡¡¡¡¡¡14¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ü£ütranslate£¨emp_name£»¡¡''''£»'_¡¡_'£©£»¡¡1£»12£©¡¡

¡¡¡¡¡¡15¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡emp_email£»¡¡

¡¡¡¡¡¡16¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡row_number£¨£©¡¡

¡¡¡¡¡¡17¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡over¡¡£¨partitionby¡¡

¡¡¡¡¡¡18¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡substr£¨substr£¨emp_firstname£»¡¡1£»1£©¡¡

¡¡¡¡¡¡19¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ü£ütranslate£¨emp_name£»'¡¡'''£»'_¡¡_'£©£»1£»12£©¡¡

¡¡¡¡¡¡20¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡order¡¡byemp_num£©¡¡rn¡¡

¡¡¡¡¡¡21¡¡¡¡¡¡¡¡¡¡from¡¡employees_old£©¡¡

¡¡¡¡¡¡22¡¡/¡¡



¡¡¡¡¡¡3000rows¡¡created¡£¡¡



¡¡¡¡¡¡Elapsed£º¡¡00£º00£º11¡£68¡¡



ÉÏÃæµÄ´úÂë±ÜÃâÁËÒ»´ÎÒ»ÐеĴ¦Àí£¬¶øÇҸýâ¾ö·½°¸µÄÖ´ÐÐʱ¼ä½öÊÇÏÈÇ°·½°¸µÄ¡¡60£¥¡£¡¡



×ܽ᣺Òì³£´¦Àí»áÆÈʹÎÒÃDzÉÓùý³ÌʽÂß¼­¡£Ó¦Ê¼ÖÕʹÓÃÉùÃ÷ʽSQL£¬¾¡Á¿Ô¤²â¿ÉÄܵÄÒì³£Çé¿ö¡£¡¡



SQL¡¡

SSQQLLµÄ±¾ÖÊ¡¡



±¾ÕÂÎÒÃǽ«ÉîÈëÌÖÂÛSQL²éѯ£¬²¢Ñо¿ÈçºÎ¸ù¾Ý²»Í¬Çé¿öµÄ¾ßÌåÒªÇó£¬À´±àдSQLÓï¾ä¡£ÎÒÃÇ¡¡

»á·ÖÎö¸´ÔÓµÄSQL²éѯÓï¾ä£¬½«ËüÃDzð½â³ÉСµÄÓï¾äƬ¶Ï£¬²¢½²½âÕâЩÓï¾äƬ¶ÏÈçºÎ¹²Í¬´Ù³É¡¡

ÁË×îÖÕ²éѯ½á¹ûµÄ²úÉú¡£¡¡



SQL¡¡

SSQQLLµÄ±¾ÖÊ¡¡



The¡¡Nature¡¡of¡¡SQL¡¡



ÔÚÉîÈëÌÖÂÛÈçºÎ±àдSQL²éѯ֮ǰ£¬ÎÒÃÇÓбØÒªÊ×ÏÈÁ˽âһЩSQL×ÔÉíµÄ»ù±¾ÌØÐÔ£ºSQLÓëÊý¡¡

¾Ý¿âÒýÇ棨database¡¡engine£©ºÍÓÅ»¯Æ÷£¨optimizer£©ÊÇʲô¹Øϵ£¿ÄÄЩÒòËØ¿ÉÄÜÏÞÖÆÓÅ»¯Ð§ÂÊ£¿¡¡



SQL¡¡

SSQQLLÓëÊý¾Ý¿â¡¡



SQL¡¡and¡¡Databases¡¡



¹ØϵÊý¾Ý¿âµÄ³öÏÖ£¬Òª¹é¹¦ÓÚE¡£F¡£¡¡CoddµÄ¹ØϵÀíÂÛ¿ª´´ÐÔÑо¿³É¹û¡£CoddµÄÑо¿³É¹ûΪÊý¾Ý¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡31¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¿âѧ¿ÆÌṩÁ˼áʵµÄÊýѧ»ù´¡¡ª¡ª¶øÔÚ´Ë֮ǰµÄºÜ³¤Ò»¸öʱÆÚÊý¾Ý¿âѧ¿ÆÖ÷ÒªÊÇƾ¾­Ñé¡£ÕâºÍ¡¡

ÔìÇŵÄÀúÊ·ºÜÏàËÆ£º¼¸Ç§ÄêÇ°ÎÒÃǾͿªÊ¼½¨Ôì¿ç½­´óÇÅ£¬µ«ÊÇÓÉÓÚµ±Ê±µÄÓªÔìÉ̲¢²»ÍêÈ«Á˽⡡

ÔìÇŲÄÁϺÍÇÅÁºÇ¿¶ÈÖ®¼äµÄ¹Øϵ£¬ÇÅÁºµÄÉè¼ÆÍùÍù»á´ó´ó³¬³öʵ¼ÊµÄÒªÇ󣻺óÀ´ÍÁľ¹¤³ÌѧµÄ¡¡

²ÄÁÏÇ¿¶ÈÀíÂÛÍêÉÆÁË£¬¸üÏȽø¸ü°²È«µÄÇÅÁºÒ²¾ÍËæÖ®³öÏÖ£¬Õâ±íÃ÷ÔìÇÅʹÓõĸ÷ÖÖ½¨Öþ²ÄÁϵá¡

µ½Á˳ä·ÖÀûÓᣵÄÈ·£¬Èç½ñµÄһЩÇÅÁº¹¤³Ì·Ç³£ºÆ´ó£¬Óë´ËÀàËÆ£¬ÏÖ´úDBMSÈí¼þÄܹ»´¦ÀíµÄ¡¡

Êý¾ÝÁ¿Ö®´óÒ²Êǽñ·ÇÎô±ÈÁË¡£¹ØϵÀíÂÛÖ®ÓÚÊý¾Ý¿â£¬ÕýÈçÍÁľ¹¤³Ìѧ֮ÓÚÇÅÁº¡£¡¡



SQLÓïÑÔ¡¢Êý¾Ý¿âºÍ¹ØϵģÐÍÈýÕß¾­³£±»»ìÏý¡£Êý¾Ý¿âµÄ¹¦ÄÜÖ÷ÒªÊÇ´æ´¢Êý¾Ý£¬ÕâЩÊý¾Ý·ûºÏ¡¡

¶ÔÏÖʵÊÀ½çÒ»²¿·ÖËù½¨Á¢µÄÌض¨Ä£ÐÍ¡£ÏàÓ¦µØ£¬Êý¾Ý¿â±ØÐëÌṩ¿É¿¿µÄ»ù´¡ÉèÊ©¡¡

£¨infrastructure£©£¬ÎÞÂÛºÎʱ¶¼Äܹ»Èöà¸öÓû§Ê¹ÓÃͬһЩÊý¾Ý£¬ÇÒÔÚÊý¾Ý±»ÐÞ¸Äʱ²»ÆÆ»µÊý¾Ý¡¡

ÍêÕûÐÔ¡£ÕâÒªÇóÊý¾Ý¿âÄܹ»´¦ÀíÀ´×Ô²»Í¬Óû§µÄ¡°×ÊÔ´ÕùÓã¨contention£©¡±£¬²¢ÄÜÔÚÊÂÎñ¡¡

£¨transaction£©´¦Àí¹ý³ÌÖÐÓöµ½»úÆ÷¹ÊÕϵȼ«¶ËÇé¿öÏÂÒ²±£³ÖÊý¾ÝÒ»ÖÂÐÔ¡£µ±È»£¬Êý¾Ý¿â»¹ÓС¡

ºÜ¶àÆäËûµÄ¹¦ÄÜ£¬±¾Ê鲢δº­¸Ç¡£¡¡



ÕýÈçÆäÃû£¬½á¹¹»¯²éѯÓïÑÔ£¨Structured¡¡Query¡¡Language£¬SQL£©ÎÞ·ÇÊÇÒ»ÖÖÓïÑÔ£¬ËäÈ»ËüÓë¡¡

Êý¾Ý¿â¹ØϵÃÜÇС£½«SQLÓïÑԺ͹ØϵÊý¾Ý¿âµÈͬÊÓÖ®£¬»òÕ߸üÔ㡪¡ªÓë¹ØϵÀíÂÛµÈͬÊÓÖ®£¬¶¼¡¡

ÊÇ´íÎóµÄ¡£ÕâÖÖ´íÎó¾ÍºÃ±È½«ÕÆÎÕÁ˵ç×Ó±íÈí¼þ»òÎÄ×Ö´¦ÀíÈí¼þÊÓΪÕÆÎÕÁË¡°ÐÅÏ¢¼¼Êõ¡±¡£Êµ¼ÊÉÏ£¬¡¡

ÓÐЩÈí¼þ²úÆ·²¢·ÇÊý¾Ý¿â£¬µ«ËüÃÇÒ²Ö§³ÖSQL£¨×¢1£©¡£ÁíÍ⣬SQLÔÚ³ÉΪ±ê׼֮ǰҲ²»µÃ²»Óë¡¡

ÖîÈçRDO»òQUELµÈÆäËûÓïÑÔ¾ºÕù£¬ÕâЩÓïÑÔÔø±»Ðí¶àÀíÂÛ¼ÒÈÏΪÓÅÓÚSQL¡£¡¡



ΪÁ˽â¾öËùνµÄ¡°SQLÎÊÌ⡱£¬Äã±ØÐëÁ˽âÁ½¸öÏà¹Ø²¿·Ö£ºSQL²éѯ±í´ïʽºÍÊý¾Ý¿âÓÅ»¯Æ÷¡£Èçͼ¡¡

4¡­1Ëùʾ£¬ÕâÁ½²¿·ÖÔÚÈý¸ö²»Í¬ÇøÓòÀïЭͬ¹¤×÷¡£Í¼µÄÖÐÑëÊǹØϵÀíÂÛ£¬ÕâÊÇÊýѧ¼ÒÃǾ¡Çé·¢»Ó¡¡

µÄÇøÓò¡£¼ò¶øÑÔÖ®£¬¹ØϵÀíÂÛÖ§³ÖÎÒÃÇͨ¹ýÒ»×é¹ØϵÔËËã·ûÀ´ËÑÑ°Âú×ãijЩÌõ¼þµÄÊý¾Ý£¬ÕâЩ¡¡

¹ØϵÔËËã·û¼¸ºõÖ§³ÖÈκλù±¾²éѯ¡£¹Ø¼üÔÚÓÚ£¬¹ØϵÀíÂÛÓÐÑϸñµÄÊýѧ»ù´¡£¬ÎÒÃÇÍêÈ«¿ÉÒÔÏà¡¡

ÐÅͬһ½á¹û¿ÉÓɲ»Í¬µÄ¹Øϵ±í´ïʽÀ´»ñµÃ£¬ÕýÈçÔÚËãÊõÖÐ246/369ÍêÈ«µÈÓÚ2/3Ò»Ñù¡£¡¡



È»¶ø£¬¾¡¹Ü¹ØϵÀíÂÛÓÐÖÁ¹ØÖØÒªµÄÀíÂÛ¼ÛÖµ£¬µ«Ò»Ð©ÓÐÖØҪʵ¼ùÒâÒåµÄ·½ÃæËü²¢Î´Éæ¼°£¬ÕâЩ¡¡

·½ÃæÊôÓÚͼÖÐËùʾµÄ¡°±¨¸æÐèÇó£¨reporting¡¡requirements£©¡±µÄ·¶Î§¡£ÆäÖÐ×îÃ÷ÏÔµÄÀý×Ó¾ÍÊǽá¹û¡¡

¼¯µÄÅÅÐò£º¹ØϵÀíÂÛÖ»¹ØÐÄÈçºÎ¸ù¾Ý²éѯÌõ¼þÈ¡µÃÕýÈ·µÄÊý¾Ý¼¯£»¶ø¶ÔÎÒÃÇÕâЩʵ¼ùÕߣ¨¶ø·Ç¡¡

ÀíÂÛ¼Ò£©¶øÑÔ£¬¹Øϵ²Ù×÷½×¶ÎÖ»¸ºÔð׼ȷÎÞÎóµØÕÒ³öÊôÓÚ×îÖÕÊý¾Ý¼¯µÄ¼Ç¼£¬¶ø²»Í¬ÐеÄÏàͬ¡¡

×ֶεĹØϵ²¢²»ÊÇÔÚÕâ¸ö½×¶Î´¦Àí£¬¶øÊÇÍêÈ«ÊôÓÚÅÅÐò²Ù×÷¡£ÁíÍ⣬¹ØϵÀíÂÛ²¢²»Éæ¼°¸÷ÖÖͳ¡¡

¼Æ¹¦ÄÜ£¨ÀýÈç°Ù·ÖλÊýµÈ£©£¬¶øÕâЩͳ¼Æ¹¦Äܾ­³£³öÏÖÔÚ²»Í¬µÄ¡°SQL·½ÑÔ£¨dialect£©¡±µ±ÖС£¹Øϵ¡¡

ÀíÂÛËùÑо¿µÄÊǼ¯ºÏ£¨set£©£¬µ«²¢²»Éæ¼°ÈçºÎΪÕâЩ¼¯ºÏÅÅÐò¡£¾¡¹ÜÓÐÐí¶à¹ØÓÚÅÅÐòµÄÊýѧÀí¡¡

ÂÛ£¬µ«ËüÃǶ¼Óë¹ØϵÀíÂÛÎ޹ء£¡¡



±ØÐë˵Ã÷µÄÊÇ£¬¹Øϵ²Ù×÷ÓëÉÏÊö¡°±¨¸æÐèÇ󡱵IJ»Í¬ÔÚÓÚ¹Øϵ²Ù×÷ÊÊÓÃÓÚÀíÂÛÉÏÎÞÏÞ´óµÄ¡¢Êýѧ¡¡

ÒâÒåÉϵļ¯£¬ÎÞÂÛÊDzÙ×÷º¬ÓÐÊ®ÐÐÊý¾ÝµÄ±í¡¢Ò»ÍòÐÐÊý¾ÝµÄ±í¡¢»¹ÊÇÒ»ÒÚÐÐÊý¾ÝµÄ±í£¬ÎÒÃǶ¼¡¡

ÄÜÒÔÏàͬµÄ·½Ê½¶ÔÆäÊ©ÒÔÈκιýÂËÌõ¼þ¡£ÔÙ´ÎÇ¿µ÷£ºµ±ÎÒÃÇÖ»¹ØÐÄÕÒ³ö²¢·µ»Ø·ûºÏ²éѯÌõ¼þµÄ¡¡

Êý¾Ýʱ£¬¹ØϵÀíÂÛÊÇÍêÈ«ÊÊÓõģ»È»¶ø£¬µ±ÎÒÃÇÐèÒª½øÐмǼÅÅÐò£¬»òÕßÖ´ÐÐÒ»¸ö´ó¶àÊýÈË´í¡¡

ÎóµØÈÏΪËüÊǹØϵ²Ù×÷µÄgroup²Ù×÷ʱ£¬È´ÒѲ»ÔÙÊÇÕë¶Ô¿ÉÒÔÎÞÏÞ´óµÄÊý¾Ý¼¯½øÐвÙ×÷ÁË£¬¶ø±Ø¡¡

ÐëÊÇÒ»¸öÓÐÏÞÊý¾Ý¼¯£¬ÓÚÊÇÕâ¸ö½á¹ûÊý¾Ý¼¯²»ÔÙÊÇÊýѧÒâÒåÉϵġ°¹Øϵ£¨relation£©¡±ÁË£¬ÖÁ´ËÎÒÃÇ¡¡

ÒѾ­³¬³öÁ˹Øϵ²Ù×÷²ã¡£µ±È»£¬ÎÒÃÇÈÔÈ»¿ÉÒÔÀûÓÃSQL¶Ô¸ÃÊý¾Ý¼¯½øÐÐһЩÓÐÓõIJÙ×÷¡£¡¡



³õ²½×ܽáһϣ¬ÎÒÃÇ¿ÉÒÔ½«SQL²éѯ±íʾΪһ¸öÁ½²ãµÄ²Ù×÷£¬Èçͼ4¡­2Ëùʾ¡£µÚÒ»²ãÊÇÒ»¸ö¹Øϵ¡¡

²Ù×÷µÄ¡°ºË¡±£¬Ëü¸ºÔðÕÒ³öÎÒÃÇÒª²Ù×÷µÄÊý¾Ý¼¯£»µÚ¶þ²ãÊÇ¡°·Ç¹Øϵ²Ù×÷²ã£¨non¡­relational¡¡layer£©¡±£¬¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡32¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

Ëü¶ÔÓÐÏÞµÄÊý¾Ý½á¹û¼¯½øÐС°¾«µñϸ¿Ì¡±´Ó¶ø²úÉúÓû§ÆÚÍûµÄ×îÖÕ½á¹û¡£¡¡

¾¡¹Üͼ4¡­2¼òÒªµØ±í´ïÁËSQLÔÚÊý¾Ý´¦Àí»·¾³ÖеÄλÖ㬵«SQL²éѯÔÚ´ó¶àÊýÇé¿ö϶¼±ÈÕâÒª¸´¡¡

Ôӵö࣬ͼ4¡­2½ö½öչʾÁËÒ»¸ö×ÜÌåµÄÃèÊö¡£¹Øϵ²Ù×÷ÖеĹýÂËÆ÷£¨filter£©ÓпÉÄÜÖ»ÊÇÒ»¸ö´úÃû¡¡

´Ê£¬Æä±³ºóÊǼ¸¸ö¶ÀÁ¢¹ýÂËÆ÷µÄ×éºÏ£¬ÀýÈçͨ¹ýunion½á¹¹»ò×Ó²éѯÀ´ÊµÏÖ£»×îÖÕ£¬SQLÓï¾äµÄ¡¡

¹¹³É¿ÉÒԺܸ´ÔÓ¡£ÉÔºó»¹»áÌÖÂÛ±àдSQLÓï¾äµÄÎÊÌ⣬µ«ÎÒÃǽÓÏÂÀ´Ê×ÏÈÒªÌÖÂÛµÄÊÇÊý¾ÝÎïÀí¡¡

ʵÏÖºÍÊý¾Ý¿âÓÅ»¯Æ÷µÄ¹Øϵ¡£¡¡



×ܽ᣺ǧÍò±ð°ÑSQL²éѯµÄÖ´Ðйý³ÌÖÐÕæÕýµÄ¹Øϵ²Ù×÷ºÍ¸½¼ÓµÄÕ¹Ïֲ㣨presentation¡¡layer£©¡¡

¹¦ÄÜ»ìΪһ̸¡£¡¡



SQL¡¡

SSQQLLÓëÓÅ»¯Æ÷¡¡



SQL¡¡and¡¡the¡¡Optimizer¡¡



µ±SQLÒýÇæ´¦Àí²éѯʱ£¬»áÓÃÓÅ»¯Æ÷ÕÒ³öÖ´Ðвéѯ×î¸ßЧµÄ·½Ê½¡£´Ëʱ¹ØϵÀíÂÛÓÖ¿ÉÒÔ´óÓÐ×÷¡¡

ΪÁË¡ª¡ªÓÅ»¯Æ÷½èÖú¹ØϵÀíÂÛ£¬¶Ô¿ª·¢ÕßÌṩµÄÓïÒåÎÞÎóµÄԭʼ²éѯ½øÐÐÓÐЧµÄµÈ¼Û±ä»»£¬¼´¡¡

ʹԭʼ²éѯ±àдµÃÏ൱±¿×¾¡£¡¡



ÓÅ»¯ÊÇÔÚÊý¾Ý´¦ÀíÕæÕý±»Ö´ÐÐʱ·¢ÉúµÄ¡£¾­¹ý±ä»»µÄ²éѯÔÚÖ´ÐÐʱ¿ÉÄܱÈÓïÒåÉϵÈЧµÄÆäËû²é¡¡

ѯ¿ìµÃ¶à£¬ÕâÒòÊÇ·ñ´æÔÚË÷Òý£¬ÒÔ¼°±ä»»Óë²éѯÊÇ·ñÊÊÓ¦¶ø²»Í¬¡£ÔÚµÚ5ÕÂÎÒÃǽ«½éÉܸ÷ÖÖÊý¾Ý¡¡

´æ´¢Ä£ÐÍ£»ÓÐʱ£¬Ìض¨´æ´¢Ä£Ð;ö¶¨Á˲éѯÓÅ»¯µÄ·½Ê½¡£ÓÅ»¯Æ÷»á¼ì²éÏÂÁÐÒòËØ£º¶¨ÒåÁËÄÄЩ¡¡

Ë÷Òý¡¢Êý¾ÝµÄÎïÀí²¼¾Ö¡¢¿ÉÓÃÄÚ´æ´óС£¬ÒÔ¼°¿ÉÓÃÓÚÖ´ÐвéѯÈÎÎñµÄ´¦ÀíÆ÷Êý¡£ÓÅ»¯Æ÷»¹ºÜÖØ¡¡

ÊÓ²éѯֱ½Ó»ò¼ä½ÓÉæ¼°µÄ±íºÍË÷ÒýµÄÊý¾ÝÁ¿¡£×îÖÕ£¬ÓÅ»¯Æ÷¸ù¾ÝÊý¾Ý¿âµÄʵ¼ÊʵÏÖÇé¿ö¶ÔÀíÂÛ¡¡

Éϵȼ۵IJ»Í¬ÓÅ»¯·½°¸×ö³öȨºâ£¬²úÉúÓпÉÄÜÊÇ×îÓŵIJéѯִÐз½°¸¡£¡¡



È»¶ø£¬Òª¼ÇסµÄ¹Ø¼üÒ»µãÊÇ£¬¾¡¹
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨11£© ²È£¨11£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡