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

SQL ¶¯Ì¬ÅÅÐòµÄ·½·¨

ÔÚ¹«¹²ÐÂÎÅ×éÖУ¬Ò»¸ö¾­³£³öÏÖµÄÎÊÌâÊÇ“ÔõÑù²ÅÄܸù¾Ý´«µÝ¸ø´æ´¢¹ý³ÌµÄ²ÎÊý·µ»ØÒ»¸öÅÅÐòµÄÊä³ö£¿”¡£ÔÚһЩ¸ßˮƽר¼ÒµÄ°ïÖú֮ϣ¬ÎÒÕûÀí³öÁËÕâ¸öÎÊÌâµÄ¼¸ÖÖ½â¾ö·½°¸¡£
Ò»¡¢ÓÃIF...ELSEÖ´ÐÐÔ¤ÏȱàдºÃµÄ²éѯ
¡¡¡¡¶ÔÓÚ´ó¶àÊýÈËÀ´Ëµ£¬Ê×ÏÈÏëµ½µÄ×ö·¨Ò²ÐíÊÇ£ºÍ¨¹ýIF...ELSEÓï¾ä£¬Ö´Ðм¸¸öÔ¤ÏȱàдºÃµÄ²éѯÖеÄÒ»¸ö¡£ÀýÈ磬¼ÙÉèÒª´ÓNorthwindÊý¾Ý¿â²éѯµÃµ½Ò»¸ö»õÖ÷£¨Shipper£©µÄÅÅÐòÁÐ±í£¬·¢³öµ÷ÓõĴúÂëÒÔ´æ´¢¹ý³Ì²ÎÊýµÄÐÎʽָ¶¨Ò»¸öÁУ¬´æ´¢¹ý³Ì¸ù¾ÝÕâ¸öÁÐÅÅÐòÊä³ö½á¹û¡£Listing 1ÏÔʾÁËÕâÖÖ´æ´¢¹ý³ÌµÄÒ»¸ö¿ÉÄܵÄʵÏÖ£¨GetSortedShippers´æ´¢¹ý³Ì£©¡£
¡¾Listing 1: ÓÃIF...ELSEÖ´Ðжà¸öÔ¤ÏȱàдºÃµÄ²éѯÖеÄÒ»¸ö¡¿
CREATE PROC GetSortedShippers
@OrdSeq AS int
AS
IF @OrdSeq = 1
SELECT * from Shippers ORDER BY ShipperID
ELSE IF @OrdSeq = 2
SELECT * from Shippers ORDER BY CompanyName
ELSE IF @OrdSeq = 3
SELECT * from Shippers ORDER BY Phone
¡¡¡¡ÕâÖÖ·½·¨µÄÓŵãÊÇ´úÂëºÜ¼òµ¥¡¢ºÜÈÝÒ×Àí½â£¬SQL ServerµÄ²éѯÓÅ»¯Æ÷Äܹ»ÎªÃ¿Ò»¸öSELECT²éѯ´´½¨Ò»¸ö²éѯÓÅ»¯¼Æ»®£¬È·±£´úÂë¾ßÓÐ×îÓŵÄÐÔÄÜ¡£ÕâÖÖ·½·¨×îÖ÷ÒªµÄȱµãÊÇ£¬Èç¹û²éѯµÄÒªÇó·¢ÉúÁ˸ı䣬Äã±ØÐëÐ޸Ķà¸ö¶ÀÁ¢µÄSELECT²éѯ——ÔÚÕâÀïÊÇÈý¸ö¡£
¶þ¡¢ÓÃÁÐÃû×Ö×÷Ϊ²ÎÊý
¡¡¡¡ÁíÍâÒ»¸öÑ¡ÔñÊÇÈòéѯÒÔ²ÎÊýµÄÐÎʽ½ÓÊÕÒ»¸öÁÐÃû×Ö¡£Listing 2ÏÔʾÁËÐ޸ĺóµÄGetSortedShippers´æ´¢¹ý³Ì¡£CASE±í´ïʽ¸ù¾Ý½ÓÊÕµ½µÄ²ÎÊý£¬È·¶¨SQL ServerÔÚORDER BY×Ó¾äÖÐʹÓÃÄÄÒ»¸öÁÐÖµ¡£×¢Ò⣬ORDER BY×Ó¾äÖеıí´ïʽ²¢Î´ÔÚSELECTÇåµ¥ÖгöÏÖ¡£ÔÚANSI SQL-92±ê×¼ÖУ¬ORDER BY×Ó¾äÖв»ÔÊÐí³öÏÖûÓÐÔÚSELECTÇåµ¥ÖÐÖ¸¶¨µÄ±í´ïʽ£¬µ«ANSI SQL-99±ê×¼ÔÊÐí¡£SQL ServerÒ»Ö±ÔÊÐíÕâÖÖÓ÷¨¡£
¡¾Listing 2£ºÓÃÁÐÃû×Ö×÷Ϊ²ÎÊý£¬µÚÒ»´Î³¢ÊÔ¡¿
CREATE PROC GetSortedShippers
@ColName AS sysname
AS
SELECT *
from Shippers
ORDER BY
CASE @ColName
WHEN 'ShipperID' THEN ShipperID
WHEN 'CompanyName' THEN CompanyName
WHEN 'Phone' THEN Phone
ELSE NULL
END
¡¡¡¡ÏÖÔÚ£¬ÎÒÃÇÀ´ÊÔÒ»ÏÂеĴ洢¹ý³Ì£¬ÒÔ²ÎÊýµÄÐÎʽָ¶¨ShipperIDÁУº
EXEC GetSortedShippers 'ShipperID'
¡¡¡¡´ËʱһÇÐÕý³£¡£µ«ÊÇ£¬µ±ÎÒÃÇÊÓͼ°ÑCompanyNameÁÐ×÷Ϊ²ÎÊýµ÷Óô洢¹ý³Ìʱ£¬Ëü²»ÔÙÓÐЧ£º
EXEC GetSortedShippers 'CompanyName'
¡¡¡¡×Ðϸ¿´Ò»Ï´íÎóÐÅÏ¢£º
Server


Ïà¹ØÎĵµ£º

sqlË÷ÒýÀàÐÍ

Ë÷ÒýÀàÐÍ
ΨһË÷Òý£ºÎ¨Ò»Ë÷Òý²»ÔÊÐíÁ½ÐоßÓÐÏàͬµÄË÷ÒýÖµ
Ö÷¼üË÷Òý£ºÎª±í¶¨ÒåÒ»¸öÖ÷¼ü½«×Ô¶¯´´½¨Ö÷¼üË÷Òý£¬Ö÷¼üË÷ÒýÊÇΨһË÷ÒýµÄÌØÊâÀàÐÍ¡£Ö÷¼üË÷ÒýÒªÇóÖ÷¼üÖеÄÿ¸öÖµÊÇΨһµÄ£¬²¢ÇÒ²»ÄÜΪ¿Õ
¾Û¼¯Ë÷Òý(Clustered)£º±íÖи÷ÐеÄÎïÀí˳ÐòÓë¼üÖµµÄÂß¼­£¨Ë÷Òý£©Ë³ÐòÏàͬ£¬Ã¿¸ö±íÖ»ÄÜÓÐÒ»¸ö
·Ç¾Û¼¯Ë÷Òý(Non-clustered)£º·Ç¾Û ......

SQL select

--desc ±íÃû ÃèÊö±íµÄÄÚÈÝ  
desc emp;
--¼ÓÉÏÊýѧ±í´ïʽºÍÁÐÃû  ""±£³Ö¸ñʽ
select ename "name space", sal*12 year_sal from emp;   
select 2*3 from dual;
select sysdate from dual;
--¿ÕÖµµÄÊýѧ±í´ïʽ ½á¹û¶¼ÊÇ¿ÕÖµ
select ename, sal*12 + comm from emp;  
- ......

SQL 2000»ù´¡Ñ§Ï°(×Ô¼º×ܽá)

ÒÔÏÂΪ±¾ÈËÕ⼸ÌìÖØÐÂѧϰSQLSERVER2000µÄѧϰ±Ê¼Ç£¬Ä¿µÄÊÇÖØÐÂÈÏʶ¼°¹®¹Ì֪ʶµã£º
Ò»¡¢¼òµ¥µÄSELECTÓï¾äµÄÓï·¨ÈçÏ£º
SELECT |ALL|DISTINCT| <Ä¿±ê±í´ïʽ>|,<Ä¿±ê±í´ïʽ>|...
from<±í»òÊÓͼÃû>|,<±í»òÊÓͼÃû>|
[WHERE<Ìõ¼þ±í´ïʽ>]
[GROUP BY <ÁÐÃû1>|HAVING<Ìõ¼þ±í´ïʽ>| ......

SQLÃæÊÔÌâÄ¿Óë³£¼ûÎÊÌâ

SQLÃæÊÔÌâ
Sql³£ÓÃÓï·¨
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
 
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK) Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨ ......

¹ØÓÚsql serverµÄ1433ºÍ1434¶Ë¿Ú

ת×Ô£º°Ù¶È°Ù¿Æ
Ëùν¶Ë¿Ú£¬¾ÍÊÇÏ൱ÓÚ»úÆ÷ÓëÍâ½ç½Ó´¥µÄ´°¿Ú¡£¶Ë¿ÚÆäʵÊÇÈí¼þµÄ´°¿Ú£¬¾ÍÊÇ˵һ¸öÈí¼þÈç¹ûÒªºÍÍâ½çÁªÏµ£¬¾Í±ØÐë´ò¿ªÒ»¸ö¶Ë¿Ú£»1434¶Ë¿ÚÊÇ΢ÈíSQL Serverδ¹«¿ªµÄ¼àÌý¶Ë¿Ú¡£ÄãҪʹÓÃSQL£¬¾Í±ØÈ»´ò¿ª1433ºÍ1434¶Ë¿Ú¡£
ĬÈÏÇé¿öÏ£¬SQL ServerʹÓÃ1433¶Ë¿Ú¼àÌý£¬ºÜ¶àÈ˶¼ËµSQL ServerÅäÖõÄʱºòÒª°ÑÕâ¸ö¶Ë¿Ú¸Ä± ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ