ѧϰSQL SERVERÓαêµÄʹÓÃ
¡¡¡¡ÔÚÕâÒ»²½ÖУ¬ÐèÒªÖ¸¶¨ÓαêµÄÊôÐԺ͸ù¾ÝÒªÇó²úÉúµÄ½á¹û¼¯¡£ÓÐÁ½ÖÖ·½·¨¿ÉÒÔÖ¸¶¨Ò»¸öÓαꡣ
¡¡¡¡ÐÎʽ1£¨ANSI 92£©
DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSOR
FOR select_statement
[FOR {READ ONLY | UPDATE ][OF column_list]}]
¡¡¡¡ÐÎʽ2
DECLARE cursor_name CURSOR
[LOCAL | GLOBAL]
[FORWARD_ONLY | SCROLL]
[STATIC | KEYSET | DYNAMIC]
[READ_ONLY | SCROLL_LOCKS | OPTIMISTIC]
FOR select_statement
[FOR {READ ONLY | UPDATE ][OF column_list]}]
INSENSITIVE¹Ø¼ü×ÖÖ¸Ã÷ҪΪ¼ìË÷µ½µÄ½á¹û¼¯½¨Á¢Ò»¸öÁÙʱ¿½±´£¬ÒÔºóµÄÊý¾Ý´ÓÕâ¸öÁÙʱ¿½±´ÖлñÈ¡¡£Èç¹ûÔÚºóÀ´Óα괦ÀíµÄ¹ý³ÌÖУ¬ÔÓлù±íÖÐÊý¾Ý·¢ÉúÁ˸ı䣬ÄÇôËüÃǶÔÓÚ¸ÃÓÎ±ê¶øÑÔÊDz»¿É¼ûµÄ¡£ÕâÖÖ²»Ãô¸ÐµÄÓα겻ÔÊÐíÊý¾Ý¸ü¸Ä¡£
¡¡¡¡SCROLL¹Ø¼ü×ÖÖ¸Ã÷Óαê¿ÉÒÔÔÚÈÎÒâ·½ÏòÉϹö¶¯¡£ËùÓеÄfetchÑ¡Ïfirst¡¢last¡¢next¡¢relative¡¢absolute£©¶¼¿ÉÒÔÔÚÓαêÖÐʹÓá£Èç¹ûºöÂÔ¸ÃÑ¡ÏÔòÓαêÖ»ÄÜÏòǰ¹ö¶¯£¨next£©¡£
¡¡¡¡Select_statementÖ¸Ã÷SQLÓï¾ä½¨Á¢µÄ½á¹û¼¯¡£Transact SQLÓï¾äCOMPUTE¡¢COMPUTE BY¡¢FOR BROWSEºÍINTOÔÚÓαêÉùÃ÷µÄÑ¡ÔñÓï¾äÖв»ÔÊÐíʹÓá£
¡¡¡¡READ ONLYÖ¸Ã÷ÔÚÓαê½á¹û¼¯Öв»ÔÊÐí½øÐÐÊý¾ÝÐ޸ġ£
¡¡¡¡UPDATE¹Ø¼ü×ÖÖ¸Ã÷ÓαêµÄ½á¹û¼¯¿ÉÒÔÐ޸ġ£
¡¡¡¡OF column_listÖ¸Ã÷½á¹û¼¯ÖпÉÒÔ½øÐÐÐ޸ĵÄÁС£È±Ê¡Çé¿öÏ£¨Ê¹ÓÃUPDATE¹Ø¼ü×Ö£©£¬ËùÓеÄÁж¼¿É½øÐÐÐ޸ġ£
¡¡¡¡LOCAL¹Ø¼ü×ÖÖ¸Ã÷ÓαêÊǾֲ¿µÄ£¬ËüÖ»ÄÜÔÚËüËùÉùÃ÷µÄ¹ý³ÌÖÐʹÓá£
¡¡¡¡GLOBAL¹Ø¼ü×ÖʹµÃÓαê¶ÔÓÚÕû¸öÁ¬½ÓÈ«¾Ö¿É¼û¡£È«¾ÖµÄÓαêÔÚÁ¬½Ó¼¤»îµÄÈκÎʱºò¶¼ÊÇ¿ÉÓõġ£Ö»Óе±Á¬½Ó½áÊøÊ±£¬Óαê²Å²»ÔÙ¿ÉÓá£
FORWARD_ONLYÖ¸Ã÷ÓαêÖ»ÄÜÏòǰ¹ö¶¯¡£
¡¡¡¡STATICµÄÓαêÓëINSENSITIVEµÄÓαêÊÇÏàͬµÄ¡£
¡¡¡¡KEYSETÖ¸Ã÷ѡȡµÄÐеÄ˳Ðò¡£SQL Server½«´Ó½á¹û¼¯Öд´½¨Ò»¸öÁÙʱ¹Ø¼ü×Ö¼¯¡£Èç¹û¶ÔÊý¾Ý¿âµÄ·Ç¹Ø¼ü×ÖÁнøÐÐÁËÐ޸ģ¬ÔòËüÃǶÔÓαêÊǿɼûµÄ¡£ÒòΪÊǹ̶¨µÄ¹Ø¼ü×Ö¼¯ºÏ£¬ËùÒԶԹؼü×ÖÁнøÐÐÐ޸ĻòвåÈëÁÐÊDz»¿É¼ûµÄ¡£
¡¡¡¡DYNAMICÖ¸Ã÷Óα꽫·´Ó³ËùÓжԽá¹û¼¯µÄÐ޸ġ£
¡¡¡¡SCROLL_LOCKÊÇΪÁ˱£Ö¤Óαê²Ù×÷µÄ³É¹¦£¬¶ø¶ÔÐ޸Ļòɾ³ý¼ÓËø¡£
¡¡¡¡OPTIMISTICÖ¸Ã÷ÄÄЩͨ¹ýÓÎ±ê½øÐеÄÐ޸ĻòÕßɾ³ý½«²»»á³É¹¦¡£
¡¡¡¡×¢Ò⣺
¡¡¡¡· Èç¹ûÔÚSELECTÓï¾äÖÐʹÓÃÁËDISTINCT¡¢UNION¡¢GROUP BYÓï¾ä£¬ÇÒÔÚÑ¡ÔñÖаüº¬Á˾ۺϱí´ïʽ£¬ÔòÓαê×Ô¶¯ÎªINSENSITIVEµÄÓαꡣ
¡¡¡¡· Èç¹û»ù±íûÓÐΨһµÄË÷Òý£¬ÔòÓαê´
Ïà¹ØÎĵµ£º
inner join(µÈÖµÁ¬½Ó) Ö»·µ»ØÁ½¸ö±íÖÐÁª½á×Ö¶ÎÏàµÈµÄÐÐ
left join(×óÁª½Ó) ·µ»Ø°üÀ¨×ó±íÖеÄËùÓмǼºÍÓÒ±íÖÐÁª½á×Ö¶ÎÏàµÈµÄ¼Ç¼
right join(ÓÒÁª½Ó) ·µ»Ø°üÀ¨ÓÒ±íÖеÄËùÓмǼºÍ×ó±íÖÐÁª½á×Ö¶ÎÏàµÈµÄ¼Ç¼
INNER JOIN Óï·¨£º
INNER JOIN Á¬½ÓÁ½¸öÊý¾Ý±íµÄÓ÷¨£º
SELECT * from ±í1 INNER JOIN ±í2 ON ±í1.×ֶκÅ=±í2 ......
select a.ClassName,a.CourseName,sum(²»¼°¸ñ) as ²»¼°¸ñ,sum(²î) as ²î,sum(ÖеÈ) as ÖеÈ,sum(ºÃ) as ºÃ ,sum(²»¼°¸ñ)+sum(²î)+sum(ÖеÈ)+sum(ºÃ) as °à¼¶×ÜÈËÊý from (select StudentID,ClassName,CourseName,1 as ²»¼°¸ñ,0 as ²î,0 as ÖеÈ,0 as ºÃ from StudentScore where ScoreRemark='fail' union all
select Stu ......
±¾ÒëÎIJÉÓÃ֪ʶ¹²ÏíÊðÃû-·ÇÉÌÒµÐÔʹÓÃ-Ïàͬ·½Ê½¹²Ïí 3.0 UnportedÐí¿ÉÐÒé·¢²¼£¬×ªÔØÇë±£Áô´ËÐÅÏ¢
ÒëÕߣºÂí³ÝÜÈ | Á´½Ó£ºhttp://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
×÷ÕߣºSadequl Hussain | ÔÎÄ£ºhttp://www.sql-server-performance.com/articles/dba/oracle_sql_server_comparison_p1.aspx
Ò» ......
MagentoµÄModels
ºÍCollection
ºÜÇ¿´ó£¬Ê¹ÓÃËüÃÇ¿ÉÒԺܷ½±ãµÄ²éѯºÍ²Ù×÷Êý¾Ý¿â¡£µ«ÊÇÓÐЩ³¡ºÏ£¬ÒòÎªÒ»Ð©ÌØÊâÐèÇó»ò¶ÔMagentoµÄÁ˽ⲻ¹»É¿ÉÄÜ»áÐèÒª×Ô¼ºÊÖдSQLÓï¾äÀ´²éѯºÍ²Ù×÷Êý¾Ý¿â¡£ÒÔÏ·ֱðÊǶÁдÊý¾Ý¿âµÄ´úÂë¡£
// For Read
// fetch read database connection that is used in Mage_Core modul ......
-- ======================================================
--ÁгöSQL SERVER ËùÓÐ±í£¬×Ö¶ÎÃû£¬Ö÷¼ü£¬ÀàÐÍ£¬³¤¶È£¬Ð¡ÊýλÊýµÈÐÅÏ¢
--ÔÚ²éѯ·ÖÎöÆ÷ÀïÔËÐм´¿É,¿ÉÒÔÉú³ÉÒ»¸ö±í£¬µ¼³öµ½EXCELÖÐ
-- ======================================================
SELECT
(case when a. ......