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

SQL ±í¸ñÁ¬½ÓµÄÓ÷¨

ÏÖÔÚÎÒÃǽéÉÜÁ¬½Ó(join)µÄ¸ÅÄî¡£ÒªÁ˽âÁ¬½Ó£¬ÎÒÃÇÐèÒªÓõ½Ðí¶àÎÒÃÇ֮ǰÒѽéÉܹýµÄÖ¸Áî¡£ ÎÒÃÇÏȼÙÉèÎÒÃÇÓÐÒÔϵÄÁ½¸ö±í¸ñ£¬
Store_Information ±í¸ñ
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
Geography ±í¸ñ
region_name
store_name
East
Boston
East
New York
West
Los Angeles
West
San Diego
¶øÎÒÃÇÒªÖªµÀÃ¿Ò»Çø (region_name) µÄÓªÒµ¶î (sales)¡£ Geography Õâ¸ö±í¸ñ¸æËßÎÒÃÇÃ¿Ò»ÇøÓÐÄÄЩµê£¬¶ø Store_Information ¸æËßÎÒÃÇÿһ¸öµêµÄÓªÒµ¶î¡£ ÈôÎÒÃÇÒªÖªµÀÃ¿Ò»ÇøµÄÓªÒµ¶î£¬ÎÒÃÇÐèÒª½«ÕâÁ½¸ö²»Í¬±í¸ñÖеÄ×ÊÁÏ´®ÁªÆðÀ´¡£µ±ÎÒÃÇ×ÐϸÁ˽âÕâÁ½¸ö ±í¸ñºó£¬ÎÒÃǻᷢÏÖËüÃǿɾ­ÓÉÒ»¸öÏàͬµÄÀ¸Î»£¬store_name£¬Á¬½ÓÆðÀ´¡£ÎÒÃÇÏȽ« SQL ¾äÁгö£¬ Ö®ºóÔÙÌÖÂÛÿһ¸ö×Ó¾äµÄÒâÒ壺
SELECT A1.region_name REGION, SUM(A2.Sales) SALES
from Geography A1, Store_Information A2
WHERE A1.store_name = A2.store_name
GROUP BY A1.region_name
½á¹û:
REGION
SALES
East
$700
West
$2050
ÔÚµÚÒ»ÐÐÖУ¬ÎÒÃǸæËß SQL ȥѡ³öÁ½¸öÀ¸Î»£ºµÚÒ»¸öÀ¸Î»ÊÇ Geography ±í¸ñÖÐµÄ Region_name À¸Î» (ÎÒÃÇÈ¡ÁËÒ»¸ö±ðÃû½Ð×ö REGION)£»µÚ¶þ¸öÀ¸Î»ÊÇ Store_Information ±í¸ñÖÐµÄ sales À¸Î» (±ðÃûΪ SALES)¡£Çë×¢ÒâÔÚÕâÀïÎÒÃÇÓÐÓõ½±í¸ñ±ðÃû£ºGeography ±í¸ñµÄ±ðÃûÊÇ A1£¬Store_Information ±í¸ñµÄ±ðÃûÊÇ A2¡£ÈôÎÒÃÇûÓÐÓñí¸ñ±ðÃûµÄ»°£¬ µÚÒ»Ðоͻá±ä³É
SELECT Geography.region_name REGION, SUM(Store_Information.Sales) SALES
ºÜÃ÷ÏԵأ¬Õâ¾Í¸´ÔÓ¶àÁË¡£ÔÚÕâÀïÎÒÃÇ¿ÉÒÔ¿´µ½±í¸ñ±ðÃûµÄ¹¦ÓãºËüÄÜÈà SQL ¾äÈÝÒ×±»Á˽⣬ÓÈÆäÊÇÕâ¸ö SQL ¾äº¬¸ÇºÃ¼¸¸ö²»Í¬µÄ±í¸ñʱ¡£
½ÓÏÂÀ´ÎÒÃÇ¿´µÚÈýÐУ¬¾ÍÊÇ WHERE ×Ӿ䡣 ÕâÊÇÎÒÃDzûÊöÁ¬½ÓÌõ¼þµÄµØ·½¡£ÔÚÕâÀÎÒÃÇҪȷÈÏ Geography ±í¸ñÖÐ Store_name À¸Î»µÄÖµÓë Store_Information ±í¸ñÖÐ store_name À¸Î»µÄÖµÊÇÏàµÈµÄ¡£Õâ¸ö WHERE ×Ó¾äÊÇÒ»¸öÁ¬½ÓµÄÁé»êÈËÎÒòΪËüµÄ½ÇÉ«ÊÇÈ·¶¨Á½¸ö±í¸ñÖ®¼äµÄÁ¬½ÓÊÇÕýÈ·µÄ¡£Èç¹û WHERE×Ó¾äÊÇ´íÎóµÄ£¬ÎÒÃǾͼ«¿ÉÄܵõ½Ò»¸öµÑ¿¨¶ùÁ¬½Ó (Cartesian join)¡£µÑ¿¨¶ùÁ¬½Ó»áÔì³ÉÎÒÃǵõ½ËùÓÐÁ½¸ö±í¸ñÿÁ½ÐÐÖ®¼äËùÓпÉÄܵÄ×éºÏ¡£ÔÚÕâ¸öÀý×ÓÖУ¬µÑ¿¨¶ùÁ¬½Ó»áÈÃÎÒÃǵõ½ 4 x 4 = 16 ÐеĽá¹û¡£


Ïà¹ØÎĵµ£º

¹ØÓÚMS SQL SERVER ±í·ÖÇøµÄһЩÎÊÌâÓë½â´ð

Q£º±ßÉϵÄͬÊÂ˵Îļþ×é°üº¬¶à¸öÎļþ¿ÉÒÔÔö¼Ó²¢Ðжȣ¬Ò²¾ÍÊǶà¸öCPU¿ÉÒÔÒ»Æð¶Á£¿
A£º¿ÉÒÔÔö¼Ó²¢Ðжȣ¬µ«Ç°ÌáÊÇÊý¾Ý¿â¿ÉÒÔÖ§³Ö¶àÏ̷߳ÃÎʲ»Í¬µÄ·ÖÇø£¬¾Ý˵2005µÄ·ÖÇø±í²¢²»ÊÇÿ¸ö·ÖÇø¶¼·ÖÅäÒ»¸öỊ̈߳¬µ«ÊÇ2008Ã²ËÆ¾ÍÊÇ¡£Æä´Î£¬Èç¹ûÊǶàCPU£¬¶à´ÅÅÌ£¬»áÔö¼Ó²¢Ðжȵġ£¶à¸öCPUÒ»Æð¶ÁÒ²Òª¿´ÕâЩ¶à¸öÎļþÊDz»ÊÇ·ÅÔÚÒ»¸ö ......

SQLÖÐexistsºÍinµÄÇø±ð

¼ÙÉèÈçÏÂÓ¦Óãº
Á½Õű헗Óû§±íTDefUser£¨userid£¬address,phone£©ºÍÏû·Ñ±íTAccConsume(userid,time,amount)£¬ÐèÒª²éÏû·Ñ³¬¹ý5000µÄÓû§¼Ç¼¡£
ÓÃexists:
select * from TDefUser
where exists (select 1 from TAccConsume where TDefUser.userid=TAccConsume.userid and TAccConsume.amount>5000)
ÓÃi ......

SQL BETWEENµÄÓ÷¨

IN Õâ¸öÖ¸Áî¿ÉÒÔÈÃÎÒÃÇÒÀÕÕÒ»»òÊý¸ö²»Á¬Ðø (discrete) µÄÖµµÄÏÞÖÆÖ®ÄÚ×¥³öÊý¾Ý¿âÖеÄÖµ£¬¶ø BETWEEN ÔòÊÇÈÃÎÒÃÇ¿ÉÒÔÔËÓÃÒ»¸ö·¶Î§ (range) ÄÚ×¥³öÊý¾Ý¿âÖеÄÖµ¡£BETWEENÕâ¸ö×Ó¾äµÄÓï·¨ÈçÏ£º
SELECT "À¸Î»Ãû"
from " ±í¸ñÃû"
WHERE "À¸Î»Ãû" BETWEEN 'ÖµÒ»' AND 'Öµ¶þ'
Õ⽫ѡ³öÀ¸Î»Öµ°üº¬ÔÚÖµÒ»¼°Öµ¶þÖ®¼äµÄÿһ±Ê× ......

SQL ORDER BYµÄÓ÷¨

µ½Ä¿Ç°ÎªÖ¹£¬ÎÒÃÇÒÑѧµ½ÈçºÎ½åÓÉ SELECT ¼° WHEREÕâÁ½¸öÖ¸Á×ÊÁÏÓɱí¸ñÖÐ×¥³ö¡£²»¹ýÎÒÃÇÉÐδÌáµ½ÕâЩ×ÊÁÏÒªÈçºÎÅÅÁС£ÕâÆäʵÊÇÒ»¸öºÜÖØÒªµÄÎÊÌâ¡£ÊÂʵÉÏ£¬ÎÒÃǾ­³£ÐèÒªÄܹ»½«×¥³öµÄ×ÊÁÏ×öÒ»¸öÓÐϵͳµÄÏÔʾ¡£Õâ¿ÉÄÜÊÇÓÉСÍù´ó (ascending) »òÊÇÓÉ´óÍùС(descending)¡£ÔÚÕâÖÖÇé¿öÏ£¬ÎÒÃǾͿÉÒÔÔËÓà ORDER BYÕâ¸öÖ¸ÁîÀ´´ïµ½ ......

SQL ALIASµÄÓ÷¨

½ÓÏÂÀ´£¬ÎÒÃÇÌÖÂÛ alias (±ðÃû) ÔÚ SQL ÉϵÄÓô¦¡£×î³£Óõ½µÄ±ðÃûÓÐÁ½ÖÖ£º À¸Î»±ðÃû¼°±í¸ñ±ðÃû¡£
¼òµ¥µØÀ´Ëµ£¬À¸Î»±ðÃûµÄÄ¿µÄÊÇΪÁËÈà SQL ²úÉúµÄ½á¹ûÒ×¶Á¡£ÔÚ֮ǰµÄÀý×ÓÖУ¬ ÿµ±ÎÒÃÇÓÐÓªÒµ¶î×ܺÏʱ£¬À¸Î»Ãû¶¼ÊÇ SUM(sales)¡£ ËäÈ»ÔÚÕâ¸öÇé¿öÏÂûÓÐʲôÎÊÌ⣬¿ÉÊÇÈç¹ûÕâ¸öÀ¸Î»²»ÊÇÒ»¸ö¼òµ¥µÄ×ܺϣ¬¶øÊÇÒ»¸ö¸´ÔӵļÆË㣬 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ