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

´Ó¡¾¸÷´óÈí¼þ¹«Ë¾±ÊÊÔѹÖáÌ⡿ѧϰSQLÓï¾ä

´Ó²©¿ÍÔ°Öп´µ½Ò»ÆªÎÄÕ£¬½éÉÜ´óÈí¼þ¹«Ë¾ÃæÊÔʱ³£³£»á³öµÄÁ½µÀSQLÌ⣨¼û¸½Â¼£©¡£
ÎÒ¾õµÃÊÜÒæºÜ¶à£¬ÔÚ´Ë֮ǰ£¬ÎÒÒ»Ö±¾õµÃ£¬SQL2008ËÆºõÌṩÁËÕâ·½ÃæµÄÖ§³Ö£¬µ«¸üµÍµÄ°æ±¾£¬°üÀ¨2005£¬·ÇÓαê×ö²»³öÀ´£¨Ë®Æ½¹»²Ë£©¡£×ܽáÐĵÃÈçÏ£º
1¡¢    Ç¿´óµÄgroup by
1  select stdname,
2  isnull(sum( case  stdsubject when  ' »¯Ñ§ '  then Result end), 0 ) [»¯Ñ§],
3  isnull(sum( case  stdsubject when  ' Êýѧ '  then Result end), 0 ) [Êýѧ],
4  isnull(sum( case  stdsubject when  ' ÎïÀí '  then Result end), 0 ) [ÎïÀí],
5  isnull(sum( case  stdsubject when  ' ÓïÎÄ '  then Result end), 0 ) [ÓïÎÄ] 
6  from #student 
7  group by stdname
ÔÚÕâÀgroup byÓësum + case½áºÏ£¬¿ÉÒÔ½«±í1ÖеļǼ£¨ÐУ©±ä³É±í2µÄ×ֶΣ¨ÁУ©¡£SumÀïÃæÈç¹ûûÓÐcase£¬ÄÇô³öÀ´µÄÖµ£¬Ö»ÄÜÊÇÈ«²¿¿ÆÄ¿µÄ×ܺͣ¬ÓÃÁËcaseÒԺ󣬾ÍÊÇij¿ÆµÄ³É¼¨£»È»ºóÕâÀïÓÃÁ˺ü¸¸ösum£¬Ã¿¸ö¿ÆÄ¿Ò»¸ösum£¬ÓÚÊDZí1Öб¾À´Ä³ÈËij¿ÆÕ¼Ò»Ìõ¼Ç¼µÄ“ÐД¾Í±ä³ÉÁ˱í2ÀïijÈËÒ»Ìõ¼Ç¼£¬Ã¿¿Æ×öÒ»¸ö×Ö¶ÎÁË¡£
ÕâÖÖÐÄ˼ÇÉÃîºÍ¶ÔÓï·¨µÄÊìÁ·ÔËÓÃÈÃÈË»÷½ÚÔÞ̾¡£
2¡¢    ÀûÓÃselect from (select from)µÄģʽÉú³ÉSQLÓï¾ä
1  declare @sql varchar( 4000 ) 
2  set  @sql  =   ' select stdname '  
3  select @sql  =  @sql  +   ' ,isnull(sum(case stdsubject when  ''' + stdsubject + '''  then Result end),0) [ ' + stdsubject + ' ] '  
4  from (select distinct stdsubject from #student)  as  a 
5  select @sql  =  @sql + '  from #student group by stdname '  
6  print @sql
7  exec(@sql)
ΪÁË×Ô¶¯Ð´ÉÏËùÓеĿÆÄ¿£¬ÕâÀïÏȽ«¿ÆÄ¿ÐÅÏ¢ÌáÁ¶³öÀ´£º
4  from (select distinct stdsubject from #student)  as &nb


Ïà¹ØÎĵµ£º

²ÎÊý»¯SQLÓï¾äSqlParameter


±ÜÃâSQL×¢ÈëµÄ·½·¨ÓÐÁ½ÖÖ£ºÒ»ÊÇËùÓеÄSQLÓï¾ä¶¼´æ·ÅÔÚ´æ´¢¹ý³ÌÖУ¬ÕâÑù²»µ«¿ÉÒÔ±ÜÃâSQL×¢È룬»¹ÄÜÌá¸ßһЩÐÔÄÜ£¬²¢ÇÒ´æ´¢¹ý³Ì¿ÉÒÔÓÉרÃŵÄÊý¾Ý¿â¹ÜÀíÔ±(DBA)±àдºÍ¼¯ÖйÜÀí£¨ÕâÖÖ×ö·¨ÎÒÔÚһЩ¹«Ë¾¼û¹ý£©£¬²»¹ýÕâÖÖ×ö·¨ÓÐʱºòÕë¶ÔÏàͬµÄ¼¸¸ö±íÓв»Í¬Ìõ¼þµÄ²éѯ£¬SQLÓï¾ä¿ÉÄܲ»Í¬£¬ÕâÑù¾Í»á±àд´óÁ¿µÄ´æ´¢¹ý³Ì£¬ËùÒÔÓÐÈËÌá³ ......

±¾ÈËдµÄµÚÒ»¸öPL/SQL¹ý³Ì

¿´µ½±ðÈËÔÚÂÛ̳µÄÌáÎÊ£º
Ò»¸ö±íµÄЧÂÊÎÊÌâ
½ñÌìÅöµ½2Õűí
1ÕÅ ÓÐ×Ö¶Î
±íAÓÐ
jtbh(¼ÒÍ¥±àºÅ) hzxm(»§Ö÷ÐÕÃû) hnbh(»§ÄÚ×î´ó±àºÅ) 
1000          ÕÅÈý            03
1001          ÕÔÁù..........................
±í ......

ѧϰ T SQL (2)

»ùÓÚmsdn ÏêϸѧϰT-SQL (http://msdn.microsoft.com/zh-cn/library/bb510741.aspx)
2. ½ñÌìÏÂÎçûʲôrun ·ÖÎö¡£¡£¡£ ¶ÔÕÕ×Åmsdn ¼òµ¥½Ì³Ì£¬³Ë»ú°Ñ»ù±¾µÄT-SQL Óï¾ä²Ù×÷Ò»±é(http://msdn.microsoft.com/zh-cn/library/ms365303.aspx)
    
Use master
Go
Create database dbname On&n ......

³£ÓÃSQL×Ö·û´®º¯ÊýÓï·¨

×Ö·û´®º¯Êý¶Ô¶þ½øÖÆÊý¾Ý¡¢×Ö·û´®ºÍ±í´ïʽִÐв»Í¬µÄÔËËã¡£´ËÀຯÊý×÷ÓÃÓÚCHAR¡¢VARCHAR¡¢ BINARY¡¢ ºÍVARBINARY Êý¾ÝÀàÐÍÒÔ¼°¿ÉÒÔÒþʽת»»ÎªCHAR »òVARCHARµÄÊý¾ÝÀàÐÍ¡£¿ÉÒÔÔÚSelect Óï¾äµÄSelect ºÍWhere ×Ó¾äÒÔ¼°±í´ïʽÖÐʹÓÃ×Ö·û´®º¯Êý¡£³£ÓõÄ×Ö·û´®º¯ÊýÓУº 
    
     ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ