SQLÓïÑÔ»ù´¡£¨3£©
GROUP BY×Ó¾ä
Ö¸¶¨²éѯ½á¹ûµÄ·Ö×éÌõ¼þ
Óï·¨£ºGROUP BY [ALL] group_by_expression_r_r [,n]
[WITH{CUBE|ROLLUP}]
group_by_expression_r_rÖ¸Ã÷·Ö×éÌõ¼þ£¬Í¨³£ÊÇÒ»¸öÁÐÃû£¬µ«²»ÄÜÊÇÁеıðÃû¡£
ALL·µ»ØËùÓвéѯ½á¹ûµÄ×éºÏ¡£Èç¹ûûÓÐÂú×ãwhere×Ó¾äµÄÊý¾ÝÔòÓÉNULLÖµ¹¹³ÉÊý¾Ý¡£ALLµÄÑ¡Ïî²»ÄÜÓëcube»òrollupÑ¡ÏîͬʱʹÓá£
cube£º³ýÁË·µ»ØÓÉGROUP BYÖ¸¶¨µÄÁÐÍ⣬»¹·µ»Ø°´×éͳ¼ÆµÄÐС£·µ»Ø½á¹ûÏȰ´µÚÒ»¸öÌõ¼þÁÐÅÅÐòÏÔʾ£¬ÔÙ°´µÚ¶þ¸öÌõ¼þÁÐÅÅÐòÏÔʾ£¬ÒÔ´ËÀàÍÆ¡£Í³¼ÆÁаüÀ¨Á˸÷ÖÖ×éºÏµÄÊý¾Ýͳ¼Æ¡£
rollup£º¶ÔGROUP BYÖÐÁеÄ˳ÐòÃô¸Ð£¬Ö»·µ»ØµÚÒ»¸ö·Ö×éÌõ¼þÖ¸¶¨µÄÁеÄͳ¼ÆÐУ¬¸Ä±äÁеÄ˳Ðò»áʹ·µ»ØµÄ½á¹ûµÄÐÐÊý·¢Éú±ä»¯¡£
×¢ÒâʹÓÃgroup by×Ó¾äʱºóÃæµÄ±äÁ¿ÒªºÍselectºóÏàÒ»Ö£¬Ã»Óаüº¬ÔھۺϺ¯ÊýÖеıäÁ¿¶¼Ó¦¸Ã×÷Ϊgroup byºóµÄ±äÁ¿¡£
HAVING ×Ó¾äÖ¸¶¨·Ö×éËÑË÷Ìõ¼þ¡£Í¨³£ºÍgroup byÒ»ÆðʹÓÃ
HAVING×Ó¾äºÍWHEREºÜÏàËÆ£¬µ«WHERE×Ó¾ä×÷ÓÃÓÚ±íºÍÊÓͼ£¬HAVING×Ó¾ä×÷ÓÃÓÚ×é¡£
SELECT DEPT_ID,COUNT(*)
from EMPLYEE
WHERE E_WAGE>=6000
GROUP BY DEPT_ID
HAVING COUNT(*)>1;ÆäÖÐCOUNT(*)±íʾÂú×ãÌõ¼þµÄÔªËØ¸öÊý¡£
ORDER BY×Ӿ䣬ָ¶¨²éѯ½á¹ûµÄÅÅÐò·½Ê½£¬Ä¬ÈÏÉýÐòASC½µÐòDESC
²éѯ¹¤×Ê×î¸ßµÄÈýÃûÔ±¹¤
select top 3 e_name,e_wage
from employee
order by e_wage desc;
compute×Ӿ䣺ÔÚ²éѯ½áβµÄĩβÉú³ÉÒ»¸ö»ã×ÜÊý¾ÝÐС£
compute{{AVG|COUNT|MAX|MIN|SUM} (expression_r_r [...,n]) [by expression_r_r[...,n]]}ÕâЩº¯Êý»áºöÂÔNULLÖµ£¬²¢ÇÒDISTINCTÑ¡Ïî²»ÄÜÔÚ´ËʹÓá£
expression_r_r±ØÐë°üº¬ÔÚselectµÄÑ¡ÏîÀ²¢ÇÒ²»ÄÜʹÓñðÃû¡£
by expression_r_rÔÚ²éѯ½á¹ûÖÐÉú³É·ÖÀàͳ¼ÆµÄÐУ¬Èç¹ûʹÓ㬱ØÐëʹÓÃorder by×Ӿ䣬expression_r_r¶ÔÓ¦order by×Ó¾äµÄÒ»²¿·Ö»òÈ«¼¯¡£
È磺select Ô±¹¤ÐÕÃû£¬ËùÊô²¿ÃÅ£¬¹¤×Ê
from Ô±¹¤Êý¾Ý±í
order by ËùÊô²¿ÃÅ
compute sum(¹¤×Ê) by ËùÊô²¿ÃÅ
½á¹û»á³öÏÖÔÚÿ¸öËùÊô²¿ÃÅ·Ö×éºóÓÐÒ»¸ö¼ÆËãsumµÄÐÐ
¾ÛºÏº¯Êý£ºAVG,SUM,MIN,MAX,COUNT
COUNT(*)¼ÆËã±íÖеÄÐÐÊý£¬Ò»ÑùµÄ¶¼¼ÆËãÉÏ¡£COUNT(DISTINCT)¼ÆË㲻ͬµÄÐÐÊý
»ã×ܺ¯ÊýºöÂÔNULLÖµ¡£
ÒÔÉϼ¸¸ö×Ó¾äÖÐÊý¾ÝÀàÐͲ»ÄÜΪtext£¬ntext£¬image»òbitÀàÐÍ¡£
Ïà¹ØÎĵµ£º
ÎÊÌ⣺
ÓÐÒ»¸ö·ÖÊý±í
id classid,score
1 01 120
2 01 128
3 02 98
4 04 134
5 04 78
ÏÖÔÚҪͳ¼Æ ¸÷°àscore >120,ºÍ´óÓÚ90·ÖµÄÈËÊý
´ïµ½ÈçÏÂЧ¹û
classid >120 >90
01 &nb ......
Ê×ÏÈ£º·ÖÀëÊý¾Ý¿â
ÆóÒµ¹ÜÀíÆ÷--ÓÒ¼üsuspectµÄÊý¾Ý¿â--ËùÓÐÈÎÎñ--·ÖÀëÊý¾Ý¿âÈ»ºó±¸·ÝÄãµÄsuspectÊý¾Ý¿âµÄÎļþ,ÔÙ°´ÏÂÃæµÄ²½Öè´¦Àí:
1.н¨Ò»¸öͬÃûµÄÊý¾Ý¿â
2.ÔÙÍ£µôsql server
3.ÓÃsuspectÊý¾Ý¿âµÄÎļþ¸²¸ÇµôÕâ¸öн¨µÄͬÃûÊý¾Ý¿â
4.ÔÙÖØÆôsql server
5.´Ëʱ´ò¿ªÆóÒµ¹ÜÀíÆ÷ʱн¨µÄͬÃûÊý¾Ý¿â»á³öÏÖÖÃÒÉ£¬ÏȲ» ......
StringBuilder Asql = new StringBuilder();
Asql.Append(" select '' as 'ÐòºÅ', T_Station.µµ°¸ºÅ,T_Station.StationName as '̨վÃû' , ");
Asql.Append(" ÇøÕ¾ºÅ.ÇøÕ ......
from×Ó¾äÖ¸¶¨ÐèÒª½øÐÐÊý¾Ý²éѯµÄ±í£¬ÊÓͼµÈÊý¾ÝÔ´£¬ÓöººÅ·Ö¸ô¡£
from×Ӿ仹¿ÉÒÔÖ¸¶¨Êý¾Ý±í»òÊÓͼ֮¼äµÄÁ¬½ÓÀàÐÍ£¬ÀàÐÍÈ¡¾öÓÚon×Ó¾äÖÐÖ¸¶¨µÄÁ¬½ÓÌõ¼þ¡£
T-SQL¿ÉÒÔÖ§³ÖÔÚfrom×Ó¾äÖÐÖ¸¶¨³ýÊý¾Ý±í»òÊÓͼÍâµÄÆäËû¶ÔÏó¹¹³ÉÅÉÉú±í¡£
ÀýÈ磺select emp.Ô±¹¤±àºÅ£¬emp.Ô±¹¤ÐÕÃû£¬sp.²¿ÃÅÃû³Æ
fr ......
µ¼³ö£º
Ö±½Ó´ò¿ª²éѯ·ÖÎöÆ÷²éѯҪµ¼³ö±íµÄÐÅÏ¢£¨select * from ±í£©£¬µÃµ½µÄ½á¹ûȫѡ£¬ÓÒ¼üÁí´æÎª xxx.csvÎļþ £¨µÃµ½¸Ã±íµÄËùÓÐÐÅÏ¢£¬CSVÎļþ¸ñʽ£©
µ¼È룺
Ê×ÏÈͨ¹ýsql server µÄÆóÒµ¹ÜÀíÆ÷Éú³ÉÒªµ¼³ö±íµÄ SQL½Å±¾£¬²½Ö裺Ҫµ¼³ö±í——ËùÓÐÈÎÎñ£¨ÓÒ¼ü£©——Éú³ÉSQL½Å±¾
µÃµ½¸Ã±íµÄ ......