ÀàËÆSQL µÄGroup by¹¦ÄÜ
×î½ü×öÁ˼¸¸öССͳ¼ÆµÄ±¨±í½çÃæ£¬ÓÉÓÚ.net²»´øgroup by µÄ¹¦ÄÜ£¬Í³¼ÆÆðÀ´ÓÐʱºòÏ൱²»±ã£¬±ã³Ã×Å˯×ŵÄʱºòдÁËÒ»¸öÀàËÆµÄ·½·¨¡£
Óв»×ãÖ®´¦»òÊÇÓиüºÃµÄ·½·¨»¹Íû´ó¼ÒÖ¸Õý¡£
ÖÁÓÚЧÂÊÈçºÎ£¿Î´Öª£¬ÒòΪ±¾È˵IJâÊÔÊý¾Ý¾ÍÊDZȽÏÉÙ¡£
/// <summary>
/// SQL Group by
/// </summary>
/// <param name="dtSource">Êý¾ÝÔ´</param>
/// <param name="arrType">ͳ¼ÆÀàÐÍ£ºcount¡¢sum¡¢avg¡¢max¡¢min</param>
/// <param name="arrField">ÓëÇ°ÃæÀàÐÍÒ»Ò»¶ÔÓ¦µÄ×Ö¶Î</param>
/// <param name="strGroupby">Groupby×Ö¶Î,¿ÉÒÔ¶à¸ö£¬²¢ÓöººÅ¸ô¿ª</param>
/// <returns></returns>
public static DataTable DataTableGroupBy(DataTable dtSource, string[] arrType, string[] arrField, string strGroupby)
{
if (strGroupby == null || strGroupby == string.Empty)
{
strGroupby = "PublicColumn";
dtSource.Columns.Add(strGroupby);//ÎÞÌõ¼þÈ«¾Öͳ¼Æ
}
//´´½¨Ò»¸öÓëÊý¾ÝÔ´Ïàͬ½á¹¹µÄ±íÓÃÓÚ½ÓÊÕͳ¼ÆºóµÄÊý¾Ý
DataTable dt = dtSource.Clone();
//group by(»òdistinct) ²Ù×÷¹ýÂ˵ôÏàͬÏî
DataView dv = dtSource.Copy().DefaultView.ToTable(true, strGroupby).DefaultView;
string[] arrRow = strGroupby.Split(',');
foreach (DataRowView drv in dv)
{
strGroupby = string.Empty;
DataRow dr = dt.NewRow();
for (int i = 0; i < arrRow.Length; i++)
{
//¹ýÂËÌõ¼þ
strGroupby += arrRow[i] + (drv[arrRow[i]].ToString() == string.Empty ? " is null " : "='" + drv[arrRow[i]] + "'") + " and ";
dr[arrRow[i]] = drv[arrRow[i]];
}
strGroupby += "1=1";
//¶Ôÿ¸ö×ֶνøÐв»Í¬·½Ê½µÄͳ¼Æ
for (int i = 0; i < arrType.Length; i++)
{
dr[arrField[i]] = dtSource.Compute(arrType[i]
Ïà¹ØÎĵµ£º
4.6 ͨ¹ýÈÕÖ¾²é¿´·þÎñÆ÷µÄÔËÐÐÇé¿ö
SQL Server 2005¿ÉÒÔ½«Ä³Ð©ÏµÍ³Ê¼þºÍÓû§×Ô¶¨ÒåµÄʼþ¼Ç¼µ½SQL Server´íÎóÈÕÖ¾ºÍWindowsÓ¦ÓóÌÐòÈÕÖ¾ÖС£ÕâÁ½ÖÖÈÕÖ¾¶¼»á×Ô¶¯±êÉÏʱ¼ä¡£
4.6.1 ÔÚ¡¾Ê¼þ²é¿´Æ÷¡¿Öв鿴·þÎñÆ÷µÄÔËÐÐÇé¿ö
SQL Server 2005·þÎñÆ÷µÄÆô¶¯¡¢¹Ø±ÕºÍÔÝÍ£¶¯×÷£¬¶¼»á²úÉúÒ»¸öʼþ¼Ç¼£¬Õâ¸ö¼Ç¼½«»á¼ÇÔÚWindows ......
ÔÚÐèÒª²âÊÔsqlÓï¾ä»òÕß´æ´¢¹ý³ÌÐÔÄܵÄʱºò¿ÉÒÔÓõÃÉÏ
CHECKPOINT --ÓÃÓÚ¼ì²éµ±Ç°¹¤×÷µÄÊý¾Ý¿âÖб»¸ü¸Ä¹ýµÄÊý¾ÝÒ³»òÈÕÖ¾Ò³£¬²¢½«ÕâЩÊý¾Ý´ÓÊý¾Ý»º³åÆ÷ÖÐÇ¿ÖÆÐ´ÈëÓ²ÅÌ
GO
DBCC FreeProcCache --´Ó»º³å³ØÖÐɾ³ýËùÓлº³åÇø
DBCC DropCleanBuffers&nbs ......
Ò»¶Îʱ¼äÀ´£¬Ã¿ÌìµÄ¹¤×÷¶¼±È½ÏÔÓ£¬vb,asp,c#,sql£¬Ã¿Ï×÷¶¼Òª¸ã£¬ÊµÔÚÊÇÀÛ£¡¹¤×÷Ö®Ó࣬ÏëÏ빫˾ºÍ¹¤×÷µÄÇé¿ö£¬¿´À´ÊÇÓбØÒª»»¸ö»·¾³ÁË¡£²»¹ýÒ²ÒªÏȰÑĿǰµÄ¹¤×÷´¦ÀíÍê³É°¡¡£
×î½üÓÖÓöµ½Ò»¸öÎÊÌ⣺һ¼Ò¿Í»§Ê¹ÓÃÖеÄÊý¾Ý¿â£¬ÈÕÖ¾ÎļþÒì³£Ôö´ó£¬Æ½¾ùÿÌìÔö¼Ó´óÔ¼Ò»¸öG£¬¶øÊý¾ÝÎļþ±ä» ......
--> Title : SQL Server 2005ÖеÄÎļþºÍÎļþ×é
--> Author : wufeng4552
--> Date : 2009-10-23
1¡¢ÎļþºÍÎļþ×éµÄº¬ÒåÓë¹ØÏµ
ÿ¸öÊý¾Ý¿âÓÐÒ»¸öÖ÷Êý¾ÝÎļþ.ºÍÈô¸É¸ö´ÓÎļþ¡£ÎļþÊÇÊý¾Ý¿âµÄÎïÀíÌåÏÖ¡£ Îļþ×é¿ÉÒÔ°üÀ¨·Ö²¼ÔÚ¶à¸öÂß¼·ÖÇøµÄÎļþ£¬ÊµÏÖ¸ºÔØÆ½ºâ¡£Îļþ×éÔÊÐ ......
Ò».Êý¾Ý¿ØÖÆÓï¾ä (DML) ²¿·Ö
1.Insert (ÍùÊý¾Ý±íÀï²åÈë¼Ç¼µÄÓï¾ä)
Insert INTO ±íÃû(×Ö¶ÎÃû1, ×Ö¶ÎÃû2, ……) VALUES ( Öµ1, Öµ2, ……);
&nb ......