CASEÔÚsql serverÖеÄʹÓÃÓ÷¨
CASE Óï¾äÔÚsql server¸úÆäËü³ÌÐòÓïÑÔÖеÄswitch¹¦ÄÜÀàËÆ£¬ÓÃÓÚ¼ÆËãÌõ¼þÁÐ±í²¢·µ»Ø¶à¸ö¿ÉÄܽá¹û±í´ïʽ֮һ¡£
ÔÚsql serverÖÐCASE¾ßÓÐÁ½ÖÖ¸ñʽ£º
a.¼òµ¥ CASE º¯Êý½«Ä³¸ö±í´ïʽÓëÒ»×é¼òµ¥±í´ïʽ½øÐбȽÏÒÔÈ·¶¨½á¹û¡£
b.CASE ËÑË÷º¯Êý¼ÆËãÒ»×é²¼¶û±í´ïʽÒÔÈ·¶¨½á¹û¡£
ÒÔÉÏÁ½ÖÖ¸ñʽ¶¼Ö§³Ö¿ÉÑ¡µÄ ELSE ²ÎÊý¡£
³£¼ûµÄ¼¸ÖÖCASEÓï¾äµÄÓ÷¨ÈçÏÂËùʾ:
1.CASE º¯ÊýÓÃÓÚ¼ÆËã¶à¸öÌõ¼þ²¢ÎªÃ¿¸öÌõ¼þ·µ»Øµ¥¸öÖµ¡£CASE º¯Êýͨ³£µÄÓÃ;ÊÇʹÓÿɶÁÐÔ¸üÇ¿µÄÖµÌæ»»´úÂë»òËõд¡£
ÏÂÃæµÄ²éѯʹÓà CASE º¯ÊýÖØÃüÃûÊé¼®µÄ·ÖÀ࣬ÒÔʹ֮¸üÒ×Àí½â¡£
USE pubs
SELECT
CASE type
WHEN 'popular_comp' THEN 'Popular Computing'
WHEN 'mod_cook' THEN 'Modern Cooking'
WHEN 'business' THEN 'Business'
WHEN 'psychology' THEN 'Psychology'
WHEN 'trad_cook' THEN 'Traditional Cooking'
ELSE 'Not yet categorized'
END AS Category,
CONVERT(varchar(30), title) AS "Shortened Title",
price AS Price
from titles
WHERE price IS NOT NULL
ORDER BY 1
2.ʹÓôøÓмòµ¥ CASE º¯ÊýºÍ CASE ËÑË÷º¯ÊýµÄ SELECT Óï¾ä
CASE º¯ÊýµÄÁíÒ»¸öÓÃ;¸øÊý¾Ý·ÖÀà¡£ÏÂÃæµÄ²éѯʹÓà CASE º¯Êý¶Ô¼Û¸ñ·ÖÀà¡£
SELECT
CASE
WHEN price IS NULL THEN 'Not yet priced'
WHEN price < 10 THEN 'Very Reasonable Title'
WHEN price >= 10 and price < 20 THEN 'Coffee Table Title'
ELSE 'Expensive book!'
END AS "Price Category",
CONVERT(varchar(20), title) AS "Shortened Title"
from pubs.dbo.titles
ORDER BY price
3.ʹÓôøÓÐ SUBSTRING ºÍ SELECT µÄ CASE º¯Êý
ÏÂÃæµÄʾÀýʹÓà CASE ºÍ THEN Éú³ÉÒ»¸öÓйØ×÷Õß¡¢Í¼Êé±êʶºÅºÍÿ¸ö×÷ÕßËùÖøÍ¼ÊéÀàÐ͵ÄÁÐ±í¡£
USE pubs
SELECT SUBSTRING((RTRIM(a.au_fname) + ' '+
RTRIM(a.au_lname) + ' '), 1, 25) AS Name, a
Ïà¹ØÎĵµ£º
Èç¹ûÄã¾³£Óöµ½ÏÂÃæµÄÎÊÌ⣬Äã¾ÍÒª¿¼ÂÇʹÓÃSQL ServerµÄÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾äÁË£º
SQL³õѧÕß¡£
¾³£Íü¼Ç³£ÓõÄDML»òÊÇDDL SQL Óï¾ä¡£
ÔÚ¶àÈË¿ª·¢Î¬»¤µÄSQLÖУ¬Ã¿¸öÈ˶¼ÓÐ×Ô¼ºµÄSQLϰ¹ß£¬Ã»ÓÐÒ»Ì×ͳһµÄ¹æ·¶¡£
ÔÚSQL Server Management StudioÖУ¬ÒѾ¸ø´ó¼ÒÌṩÁ˺ܶೣÓõÄÏÖ³ÉSQL¹æ·¶Ä£°å¡£
SQL Server Management ......
Êý¾Ý¶¨ÒåÓïÑÔ£¨DDL£©<²Ù×÷±íµÄ½á¹¹>£ºcreate£¨ ´´½¨£©¡¢
alter£¨¸ü¸Ä£©¡¢
drop£¨É¾³ý£©
Êý¾Ý²Ù×ÝÓïÑÔ£¨DML£©<²Ù×÷±íµÄÊý¾Ý>£ºinsert£¨²åÈ룩¡¢select£¨Ñ¡Ôñ£©¡¢delete£¨É¾³ý£©¡¢update£¨¸üУ©
ÊÂÎñ¿ØÖÆÓïÑÔ£¨TCL£©£ºcommit £¨ Ìá½»£©¡¢savepoint£¨±£´æµã£©¡¢rollback£¨»Ø¹ö£©
Êý¾Ý¿ØÖÆÓïÑÔ£ºgrant£¨ÊÚÓè£ ......
ÕâÊÇÎÒ±ßѧ±ß×ܽáµÄ£¬×ܹ²»¨ÁËÒ»ÌìÒ»Ò¹µÄʱ¼ä£¬²é×ÊÁϺͿ´ÊÓÆµÍê³ÉµÄ£¬µ«ÎÒ¶Ôµ¥Ðк¯ÊýºÍ¶àÐк¯ÊýûÓÐ×ö¹ý¶àµÄÑо¿£¬ÒòΪÕß¿ÉÒÔ²éÎĵµ¡£»¹ÓоÍÊǶà±í²éѯÑо¿Ò²±È½Ïdz£¬Õâ¿ÉÒÔÔÚÒÔºóÓõ½µÄʱºòÔÚ¾ßÌåÑо¿¡£ »¹ÓоÍÊÇÒªÊìϤÊý¾Ý¿âµÄ²Ù×÷£¬Ôöɾ¸Ä²é£¬ÕâЩ¶¼ÒªÏ൱ÊìÁ·£¬Íü¼ÇʱҪ¼°Ê±¿´±Ê¼Ç¡£
SQL
1....... ......
select a.FRMNO,a.GATE,a.MSGID,a.MailSendTime,a.UserNM, a.MailSubject,a.IsRead,a.FRMID,a.isattach,b.STATE ,a.FLOWSTATE from ROAMSGE a, ROASTAT b where a.FRMID = b.FRMID and b.state='1' and a.FrmNm like '%" + Cdorpsel1 + "%' and a.MAILSENDTIME>to_date('" + date1 + "','YYYY-MM-DD') ......
ÔÚSQL Server 2005Êý¾Ý¿âÖУ¬Í¨¹ýÐÂÔöµÄService Broker¿ÉÒÔʵÏÖÒì²½´¥·¢Æ÷µÄ´¦Àí¹¦ÄÜ¡£±¾ÎÄÌṩһÖÖʹÓÃService BrokerʵÏÖµÄͨÓÃÒì²½´¥·¢Æ÷·½·¨¡£
ÔÚ±¾Õâ¸ö·½·¨ÖУ¬Í¨¹ýService Broker¹¹ÔìÒì²½´¥·¢Æ÷´¦Àí¼Ü¹¹£¬¶ÔÓÚҪʹÓÃÕâÖּܹ¹µÄ±í£¬Ö»ÐèÒª´´½¨ÏàÓ¦µÄ´¥·¢Æ÷¼°´¦Àí´¥·¢Æ÷ÖÐÊý¾ÝµÄ´æ´¢¹ý³Ì£¬²¢ÇÒÔÚÒì²½´¥·¢Æ÷¼Ü¹¹ÖÐµÇ¼Ç ......