Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÓÃSQL Server 2005 CTE¼ò»¯²éѯ

SQL Server 2005Òý½øÁËÒ»¸öºÜÓмÛÖµµÄеÄTransact-SQLÓïÑÔ×é¼þ£ºÒ»¸öͨÓñí±í´ïʽ£¨Common Table Expression£¬CTE£©£¬ËüÊÇÅÉÉú±íºÍÊÓͼµÄÒ»¸ö±ã½ÝµÄÌæ´ú¡£Í¨¹ýʹÓÃCTE£¬ÎÒÃÇ¿ÉÒÔ´´½¨Ò»¸öÃüÃû½á¹û¼¯À´ÔÚSELECT¡¢INSERT¡¢UPDATEºÍDELETEÓï¾äÖÐÒýÓ㬶øÎÞÐë±£´æ½á¹û¼¯½á¹¹µÄÈκÎÔªÊý¾Ý¡£ÔÚ±¾ÎÄÖУ¬ÎÒ½«²ûÊöÈçºÎÔÚSQL Server 2005Öд´½¨CTE——°üÀ¨ÈçºÎʹÓÃCTEÀ´´´½¨Ò»¸öµÝ¹é²éѯ——²¢¾Ù¼¸¸öÀý×ÓÀ´ËµÃ÷ËüÃÇÊÇÈçºÎʹÓõġ£×¢Ò⣬±¾ÎÄÖÐËùÓÐÀý×Ó¶¼Ê¹ÓÃSQL Server 2005µÄAdventureWorksʾÀýÊý¾Ý¿â¡£
ÔÚSQL Server 2005Öд´½¨Ò»¸ö»ù±¾CTE
ÎÒÃÇ¿ÉÒÔÔÚSELECT¡¢INSERT¡¢UPDATE»òDELETEÓï¾ä֮ǰÌí¼ÓÒ»¸öWITH×Ó¾äÀ´¹¹³ÉÒ»¸öCTE¡£ÏÂÃæµÄÓï·¨ÏÔʾÁËWITH×Ó¾äµÄ»ù±¾¹¹ÔìºÍCTE¶¨Ò壺
[WITH <CTE_definition> [£¬...n]]
<SELECT£¬ INSERT£¬ UPDATE£¬ or DELETE statement that
calls the CTEs>
<CTE_definition>::=
CTE_name [(column_name [£¬...n ])] 
AS
(
CTE_query

ÈçÉÏÃæÓï¾äËùʾ£¬Äã¿ÉÒÔÔÚ¿ÉÑ¡µÄWITH×Ó¾äÖж¨Òå¶à¸öCTE¡£CTE¶¨Òå°üº¬CTEÃû³Æ¡¢CTE×Ö¶ÎÃû³Æ¡¢AS¹Ø¼ü×ÖºÍÀ¨ºÅÖеÄCTE²éѯ¡£×¢Ò⣬CTE×Ö¶ÎÃû³ÆµÄÊýÄ¿±ØÐëÓëCTE²éѯ·µ»ØµÄ×Ö¶ÎÊýÄ¿ÏàÆ¥Åä¡£ÁíÍ⣬Èç¹ûCTE²éѯÌṩËùÓÐ×Ö¶ÎÃû³Æ£¬ÄÇô×Ö¶ÎÃû³ÆÊÇ¿ÉÑ¡µÄ¡£
ÏÖÔÚÎÒÃÇÒѾ­¶ÔSQL ServerµÄCTEÓï·¨ÓÐÁË»ù±¾µÄÁ˽⣬ÏÂÃæÈÃÎÒÃÇÀ´¿´Ò»¸öCTE¶¨ÒåµÄÀý×Ó£¬ÒÔ±ã¸üºÃµØÀí½âÕâ¸öÓï·¨¡£ÏÂÃæµÄÀý×Ó¶¨ÒåÁËÒ»¸öÃüÃûΪProductSold µÄCTE£¬½Ó×ÅÔÚSELECTÓï¾äÖÐÒýÓÃÁËCTE£º
WITH ProductSold (ProductID£¬ TotalSold)
AS 
(
SELECT ProductID£¬ SUM(OrderQty) 
from Sales.SalesOrderDetail
GROUP BY ProductID

SELECT p.ProductID£¬ p.Name£¬ p.ProductNumber£¬ 
ps.TotalSold
from Production.Product AS p
INNER JOIN ProductSold AS ps 
ON p.ProductID = ps.ProductID
ÕâÀï¿ÉÒÔ¿´µ½£¬WITH×Ó¾äÔÚÒýÓÃCTEµÄSELECTÓï¾ä֮ǰ¡£WITH×Ó¾äµÄµÚÒ»Ðаüº¬ÁËCTEµÄÃû³Æ£¨ProductSold£©ÒÔ¼°ÔÚCTE µÄÁ½¸ö×Ö¶ÎÃû³Æ(ProductID ºÍTotalSold)¡£½Ó×ÅÊÇAS¹Ø¼ü×Ö£¬½ô½Ó×ÅÊÇÀ¨ºÅÖеÄCTE²éѯ¡£ÕâÑù£¬CTE²éѯ·µ»ØÁËÿ¸ö²úÆ·µÄÏúÊÛ×ÜÊý¡£


Ïà¹ØÎĵµ£º

ÈçºÎÈÃÄãµÄSQLÔËÐеøü¿ì

 
 
ÈçºÎÈÃÄãµÄSQLÔËÐеøü¿ì
 
----   ÈËÃÇÔÚʹÓÃSQLʱÍùÍù»áÏÝÈëÒ»¸öÎóÇø£¬¼´Ì«¹Ø×¢ÓÚËùµÃµÄ½á¹ûÊÇ·ñÕýÈ·£¬¶øºöÂÔ   
  Á˲»Í¬µÄʵÏÖ·½·¨Ö®¼ä¿ÉÄÜ´æÔÚµÄÐÔÄܲîÒ죬ÕâÖÖÐÔÄܲîÒìÔÚ´óÐ͵ĻòÊǸ´ÔÓµÄÊý¾Ý¿â   
  »·¾³ÖУ¨ÈçÁª»úÊ ......

SQLѧϰ±Ê¼Ç

 2009-11-18 12:51:46
 ÏÞ¶¨´¦Àí¼Ç¼µÄµ¥Î»£¬rowcount=100±íʽÿ´Î´¦Àí100ÌõÊý¾Ý¡£Êµ¼Ê´¦ÀíµÄ¼Ç¼ÊýÓÉrowcountºÍwhere×Ó¾ä¾ö¶¨¡£Èç¹û·ûºÏwhereµÄ¼Ç¼Êý´óÓÚrowcount,ÔòÓÐrowcount¾ö¶¨£¬Èç¹ûСÓÚrowcount£¬ÔòÓÉwhere¾ö¶¨¡£
create table tb(id int identity(1,1),num int)
insert into tb
values(1)
while @@ ......

SQL×¢Èë©¶´½Ó´¥

 Òý×Ôhttp://www.05112.com/Article/200908/26674.html
ÍøÕ¾SQL×¢Èë©¶´È«½Ó´¥£¨¸ß¼¶Æª£©
ÎÄÕÂÕûÀí·¢²¼£ººÚ¿Í·çÔÆ ÄÚÈݹØ×¢¶È£º
291 ¸üÐÂʱ¼ä£º2009-8-15 6:36:47
¿´ÍêÈëÃÅÆªºÍ½ø½×ƪºó£¬ÉÔ¼ÓÁ·Ï°£¬ÆÆ½âÒ»°ãµÄÍøÕ¾ÊÇûÎÊÌâÁË¡£µ«Èç¹ûÅöµ½±íÃûÁÐÃû²Â²»µ½£¬»ò³ÌÐò×÷Õß¹ýÂËÁËÒ»Ð©ÌØÊâ×Ö·û£¬ÔõôÌá¸ß×¢ÈëµÄ³É¹¦ÂÊ£¿Ôõ ......

MySQL¶Ô±ê×¼SQLµÄÀ©Õ¹

MySQL·þÎñÆ÷°üº¬Ò»Ð©ÆäËûSQL DBMSÖв»¾ß±¸µÄÀ©Õ¹¡£×¢Ò⣬Èç¹ûʹÓÃÁËËüÃÇ£¬½«ÎÞ·¨°Ñ´úÂëÒÆÖ²µ½ÆäËûSQL·þÎñÆ÷¡£ÔÚijЩÇé¿öÏ£¬Äã¿ÉÒÔ±àд°üº¬MySQLÀ©Õ¹µÄ´úÂ룬µ«ÈÔ±£³ÖÆä¿ÉÒÆÖ²ÐÔ£¬·½·¨ÊÇÓÓ/*... */”×¢Ê͵ôÕâЩÀ©Õ¹¡£MySQL·þÎñÆ÷Äܹ»½âÎö²¢Ö´ÐÐ×¢ÊÍÖеĴúÂ룬¾ÍÏñ¶Ô´ýÆäËûMySQLÓï¾äÒ»Ñù£¬µ«ÆäËûSQL·þÎñÆ÷½«ºöÂÔ ......

¼¸ÌõÓÐÓõÄSqlÓï¾ä

1. Sql  ÑÓʱºòÖ´ÐÐ
a. ÈýÊ®ÃëºóÖ´ÐÐ WAITFOR DELAY  ºóÃæµÄÓï¾ä
WAITFOR DELAY '00:00:30'
b. 10:00·Ö¿ªÊ¼Ö´ÐкóÃæµÄ´úÂë
WAITFOR TIME '10:00';
 
2.  ÊÕËõÊý¾Ý¿â£¬Ê¹Æä¿ÕÓà¿Õ¼äΪ0%
DBCC SHRINKDATABASE (DataBaseName,0)
3.  È¡µÃÊý¾Ý¿âÎļþËùÔÚµÄÅÌ·û
declare @dirverNam ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ