Hxj.Data Êý¾Ý¿â×é¼þÎĵµ

2026/4/23 10:06:39

Êý¾Ý¿â×é¼þ Hxj.Data £¨¶þÊ®£© £¨·ÖÒ³£©

·ÖÒ³ÔÚÇ°ÃæºÃ¼¸½ÚÖеÄÁÐ×ÓÖÐÒѾ­³öÏÖ£¬ÏÖÔÚÔÙÏêϸ½²½âһϡ£ ÓÐÈýÖÖ·½·¨È¥ÊµÏÖ£º 1¡¢Top(int topCount) ·½·¨

ÔÚsqlserverºÍmsaccessÖÐÆäʵ¾ÍÊÇtop , ÔÚoracleͨ¹ýrownumʵÏÖ¡£ 2¡¢From(int startIndex, int endIndex) ´ÓstartIndexÌõµ½endIndexÌõÖ®¼äµÄ¼Ç¼Êý¡£ 3¡¢Page(int pageSize, int pageIndex) ÿҳpageSizeÌõ£¬µÚpageIndexÒ³ ÏÂÃæ¾ÍÒÀ´Î¶ÔÕâÈý¸ö·½·¨¾ÙÀý˵Ã÷¡£ top·½·¨£º

DbSession.Default.From() .Top(10) .ToList();

¸Ã²éѯʱ²éѯproducts±íÖеÄǰ10Ìõ¼Ç¼£¬Éú³ÉµÄsqlÓï¾äÈçÏ£º(ÈçºÎÊä³ö²é¿´×é¼þÉú³ÉµÄsql)

Text:

SELECT TOP 10 * FROM [Products]

from·½·¨£º

DbSession.Default.From() .From(3, 8) .ToList();

²éÕÒµÚ3Ìõµ½µÚ8ÌõµÄÊý¾Ý£¨°üÀ¨µÚ3ÌõºÍµÚ8Ìõ£©£¬Éú³ÉµÄsqlÓï¾äÈçÏ£º

Text:

SELECT * FROM

( SELECT TOP 6 * FROM

( SELECT TOP 8 * FROM [Products] ORDER BY [Products].[ProductID] ASC) AS tempIntable ORDER BY [ProductID] DESC) AS tempOuttable ORDER BY [ProductID] ASC

page·½·¨£º

41

DbSession.Default.From() .Page(10, 2) .ToList();

²éѯÿҳ10ÌõµÄµÚ2Ò³Êý¾Ý£¬sqlÓï¾äÈçÏ£º

Text:

SELECT * FROM

( SELECT TOP 10 * FROM

( SELECT TOP 20 * FROM [Products] ORDER BY [Products].[ProductID] ASC) AS tempIntable ORDER BY [ProductID] DESC) AS tempOuttable ORDER BY [ProductID] ASC

¿ÉÒÔ¿´³öfrom·½·¨ºÍpage·½·¨Éú³ÉµÄsqlÓï¾äÊǸñʽÊÇÒ»ÑùµÄ£¬Æäʵpage·½·¨×îÖÕ»¹Êǵ÷ÓÃfrom·½·¨£¬

Èç¹ûfromµÄstartIndex²ÎÊýµÈÓÚ1¾Í»áµ÷ÓÃtop·½·¨À´²éѯ¡£ ĬÈÏÇé¿öÏÂÎÒÃDz¢Ã»ÓÐÉèÖÃÅÅÐò£¬×é¼þÔò»á×Ô¶¯Ìí¼ÓÒ»¸öÅÅÐò£¬Èç¹ûÓÐÖ÷¼üÔòÑ¡Ö÷¼üÅÅÐò£¬²»È»Ñ¡Ò»¸öÆäËûÁÐÅÅÐò¡£

µ±È»ÔںܶàÇé¿öÏÂÎÒÃÇÊÇÐèÒªÉèÖÃÄÄЩÁÐÅÅÐòµÄ¡£ ÀýÈ磺

DbSession.Default.From() .Page(10, 2)

.OrderBy(Products._.UnitPrice.Desc) .Where(Products._.CategoryID == 2) .ToList();

²éѯÌõ¼þÊÇcategoryidµÈÓÚ2£¬°´ÕÕunitpriceµ¹ÐðÅÅÐò£¬Ã¿Ò³10ÌõµÄµÚ2Ò³Êý¾Ý¡£

Éú³ÉµÄsqlÈçÏ£º

Text:

SELECT * FROM

( SELECT TOP 2 * FROM [Products] WHERE [Products].[CategoryID] = @bee7551993404c8592f07f9b01710bb5 ORDER BY [Products].[UnitPrice] ASC) AS temp_table ORDER BY [UnitPrice] DESC

Parameters:

@bee7551993404c8592f07f9b01710bb5[Int32] = 2

ÕâÑùµÄsqlÓï¾äÊDz»ÊdzöºõÒâÁϰ¡£¬Ô­À´·ûºÏÌõ¼þµÄ²éѯµÚ¶þÒ³Ö»ÓÐ2ÌõÊý¾Ý£¬ËùÒÔ²éѯµÄʱºò¾ÍÖ±½ÓunitpriceÕýÐòtop 2¾ÍÍê½áÁË¡£ ÎÒÃǰÑÌõ¼þÈ¥µôÔÙ¿´¿´£º

DbSession.Default.From() .Page(10, 2)

.OrderBy(Products._.UnitPrice.Desc) //.Where(Products._.CategoryID == 2) .ToList(); Éú³ÉµÄsqlÈçÏ£º

Text:

SELECT * FROM

42

( SELECT TOP 10 * FROM

( SELECT TOP 20 * FROM [Products] ORDER BY [Products].[UnitPrice] DESC) AS tempIntable ORDER BY [UnitPrice] ASC) AS tempOuttable ORDER BY [UnitPrice] DESC

ÕâÑùËãÊÇÕý³£µÄÉú³É¸ñʽÁË¡£

ÒÔÉϵÄsql½Å±¾¶¼ÊÇÔÚsql server2000ÏÂÉú³ÉµÄ¡£

ÆäʵÔÚ²éѯ¹ý³ÌÖÐ×齨»¹»á×Ô¶¯²éѯÁËcount()·ûºÏÌõ¼þµÄ¼Ç¼Êý£¬ËùÒÔÔÚ´óÊý¾ÝµÄÇé¿öÏ£¬Ð§Âʲ»»áºÜºÃ¡£

Èç¹ûÄãÉèÖÃ×齨µÄÊý¾Ý¿âÊÇsql server2005Ôò²»»áÈ¥²éѯ count£¬¶øÊÇÖ±½Óͨ¹ýrow_number()À´²éѯ£¬À´»ñµÃ¸üºÃµÄЧÂÊ¡£(oracleÔòÊÇrownumʵÏÖ) ÏÂÃæÀ´sql server2005Àý×Ó£º

DbSession.Default.From() .Page(10, 2)

.OrderBy(Products._.UnitPrice.Desc) //.Where(Products._.CategoryID == 2) .ToList();

´úÂ뻹ÊÇÉÏÃæµÄÀý×ÓµÄ,Éú³ÉµÄsql£º

Text:

SELECT * FROM

( SELECT *,row_number() over( ORDER BY [Products].[UnitPrice] DESC) AS tmp__rowid FROM [Products] ) AS tmp_table

WHERE (tmp__rowid BETWEEN 11 AND 20)

·½·¨µÄµ÷Óû¹ÊÇÒ»ÑùµÄ£¬ËùÒÔÈç¹ûfromµÄ²ÎÊýstartIndexµÈÓÚ1,»¹ÊÇÓÅÏÈʹÓÃtop,²¢Ã»ÓÐʹÓÃrow_numer()¡£

µ±È»Äã¾õµÃ·ÖÒ³»¹²»¹»ÀíÏ룬¿ÉÒÔ×Ô¼ºÐ´sql»òÕß´æ´¢¹ý³Ì¡£

Êý¾Ý¿â×é¼þ Hxj.Data £¨¶þʮһ£© £¨ToScalar£©

¾­¹ýÖÜÄ©µÄͨÏü£¬·¢²¼ÁË×é¼þ1.0°æ±¾¡£

¶Ô×é¼þ½øÐÐÁËÀ©Õ¹£¬×î´óµÄÐ޸ľÍÊÇÔö¼Ó»º´æ²éѯ£¬ÒÔ»ñµÃ¸üºÃµÄÐÔÄÜ¡£ ±¾½ÚÏȽ²Ò»Ð©Ð¡µÄÀ©Õ¹Ð޸ġ£

֮ǰ°æ±¾ToScalar()Ö»ÊÇ·µ»Øobject¡£

ÏÖÔÚÔö¼ÓÁËToScalar()·½·¨£¬×é¼þ×Ô¶¯×ª»»ÀàÐÍ¡£ ÀýÈ磺

DbSession.Default.From().Select(Products._.ProductID).Top(1).ToScalar();

43

ÕâÑù¾Í·µ»ØÀàÐÍΪintÀàÐÍ£¬Ãâȥת»»µÄ´úÂë¡£

µ±²éѯ³öÀ´µÄֵΪnull »òÕßDbNull ,¸Ãת»»Ôò·µ»Ødefault(TResult) ¡£ ËæÖ®À©Õ¹ÁËDbSessionµÄ·½·¨£º

Sum(Field field, WhereClip where) Max(Field field, WhereClip where) Min(Field field, WhereClip where) Avg(Field field, WhereClip where) ·µ»ØÐèÒªµÄÀàÐÍ¡£ ÀýÈ磺

DbSession.Default.Avg(Products._.UnitPrice, WhereClip.All);

ÕâÑù·µ»Ø»ØÀ´µÄ¾ÍÊÇdecimal ÀàÐ͵ÄÊý¾Ý¡£

DbSession»¹Ôö¼ÓÁËExists(WhereClip where) ÅжÏÊÇ·ñ´æÔڼǼ£¬·µ»Øbool¡£ ÏÂÒ»½Ú½«½²Êö»º´æ²éѯ¡£

Êý¾Ý¿â×é¼þ Hxj.Data £¨¶þÊ®¶þ£© £¨»º´æ£©

Ê×ÏÈÎÒÊÇ×öweb¿ª·¢µÄ£¬ËùÒԺܶà»áÆ«ÏòwebµÄ£¬×é¼þʹÓõĻº´æÊÇSystem.Web.HttpRuntime.Cache¡£ ×é¼þÔÚĬÈÏÇé¿öÏÂÊǹرջº´æµÄ¡£ ËùÒÔÒª¿ªÆô»º´æ²éѯҪ×öÒ»ÏÂÅäÖᣠÏÈ¿´Ò»ÏÂÀý×ÓÅäÖãº

44


Hxj.Data Êý¾Ý¿â×é¼þÎĵµ.doc ½«±¾ÎĵÄWordÎĵµÏÂÔØµ½µçÄÔ
ËÑË÷¸ü¶à¹ØÓÚ£º Hxj.Data Êý¾Ý¿â×é¼þÎĵµ µÄÎĵµ
Ïà¹ØÍÆ¼ö
Ïà¹ØÔĶÁ
¡Á ÓοͿì½ÝÏÂÔØÍ¨µÀ£¨ÏÂÔØºó¿ÉÒÔ×ÔÓɸ´ÖƺÍÅŰ棩

ÏÂÔØ±¾ÎĵµÐèÒªÖ§¸¶ 10 Ôª

Ö§¸¶·½Ê½£º

¿ªÍ¨VIP°üÔ»áÔ± ÌØ¼Û£º29Ôª/ÔÂ

×¢£ºÏÂÔØÎĵµÓпÉÄÜ¡°Ö»ÓÐĿ¼»òÕßÄÚÈݲ»È«¡±µÈÇé¿ö£¬ÇëÏÂÔØÖ®Ç°×¢Òâ±æ±ð£¬Èç¹ûÄúÒѸ¶·ÑÇÒÎÞ·¨ÏÂÔØ»òÄÚÈÝÓÐÎÊÌ⣬ÇëÁªÏµÎÒÃÇЭÖúÄã´¦Àí¡£
΢ÐÅ£ºxuecool-com QQ£º370150219