PL/SQLµ¥Ðк¯ÊýºÍ×麯ÊýÏê½â
º¯ÊýÊÇÒ»ÖÖÓÐÁã¸ö»ò¶à¸ö²ÎÊý²¢ÇÒÓÐÒ»¸ö·µ»ØÖµµÄ³ÌÐò¡£ÔÚSQLÖÐOracleÄÚ½¨ÁËһϵÁк¯Êý£¬ÕâЩº¯Êý¶¼¿É±»³ÆÎªSQL»òPL/SQLÓï¾ä£¬º¯ÊýÖ÷Òª·ÖΪÁ½´óÀࣺ
µ¥Ðк¯Êý¡¢×麯Êý
±¾ÎĽ«ÌÖÂÛÈçºÎÀûÓõ¥Ðк¯ÊýÒÔ¼°Ê¹ÓùæÔò¡£
SQLÖеĵ¥Ðк¯Êý
SQLºÍPL/SQLÖÐ×Ô´øºÜ¶àÀàÐ͵ĺ¯Êý£¬ÓÐ×Ö·û¡¢Êý×Ö¡¢ÈÕÆÚ¡¢×ª»»¡¢ºÍ»ìºÏÐ͵ȶàÖÖº¯ÊýÓÃÓÚ´¦Àíµ¥ÐÐÊý¾Ý£¬Òò´ËÕâЩ¶¼¿É±»Í³³ÆÎªµ¥Ðк¯Êý¡£ÕâЩº¯Êý¾ù¿ÉÓÃÓÚSELECT,WHERE¡¢ORDER BYµÈ×Ó¾äÖУ¬ÀýÈçÏÂÃæµÄÀý×ÓÖоͰüº¬ÁËTO_CHAR,UPPER,SOUNDEXµÈµ¥Ðк¯Êý¡£
SELECT ename, TO_CHAR(hiredate,'day,DD-Mon-YYYY') from scott.emp Where UPPER(ename) Like 'AL%'ORDER BY SOUNDEX(ename)
µ¥Ðк¯ÊýÒ²¿ÉÒÔÔÚÆäËûÓï¾äÖÐʹÓã¬ÈçupdateµÄSET×Ӿ䣬INSERTµÄVALUES×Ӿ䣬DELETµÄWHERE×Ó¾ä,ÈÏÖ¤¿¼ÊÔÌØ±ð×¢ÒâÔÚSELECTÓï¾äÖÐʹÓÃÕâЩº¯Êý£¬ËùÒÔÎÒÃǵÄ×¢ÒâÁ¦Ò²¼¯ÖÐÔÚSELECTÓï¾äÖС£
NVL(x1,x2)
ÔÚÈçºÎÀí½âNULLÉÏ¿ªÊ¼ÊǺÜÀ§Äѵ쬾ÍËãÊÇÒ»¸öºÜÓоÑéµÄÈËÒÀÈ»¶Ô´Ë¸Ðµ½À§»ó¡£NULLÖµ±íʾһ¸öδ֪Êý¾Ý»òÕßÒ»¸ö¿ÕÖµ£¬ËãÊõ²Ù×÷·ûµÄÈκÎÒ»¸ö²Ù×÷ÊýΪNULLÖµ£¬½á¹û¾ùΪÌá¸öNULLÖµ,Õâ¸ö¹æÔòÒ²ÊʺϺܶຯÊý£¬Ö»ÓÐCONCAT,DECODE,DUMP,NVL,REPLACEÔÚµ÷ÓÃÁËNULL²ÎÊýʱÄܹ»·µ»Ø·ÇNULLÖµ¡£ÔÚÕâЩÖÐNVLº¯Êýʱ×îÖØÒªµÄ£¬ÒòΪËûÄÜÖ±½Ó´¦ÀíNULLÖµ£¬NVLÓÐÁ½¸ö²ÎÊý£ºNVL(x1,x2),x1ºÍx2¶¼Ê½±í´ïʽ£¬µ±x1Ϊnullʱ·µ»ØX2,·ñÔò·µ»Øx1¡£
ÏÂÃæÎÒÃÇ¿´¿´empÊý¾Ý±íËü°üº¬ÁËнˮ¡¢½±½ðÁ½ÏÐèÒª¼ÆËã×ܵIJ¹³¥
column name emp_id salary bonuskey type pk nulls/unique nn,u nnfk table datatype number number numberlength 11.2 11.2
²»ÊǼòµ¥µÄ½«Ð½Ë®ºÍ½±½ð¼ÓÆðÀ´¾Í¿ÉÒÔÁË£¬Èç¹ûijһÐÐÊÇnullÖµÄÇô½á¹û¾Í½«ÊÇnull£¬±ÈÈçÏÂÃæµÄÀý×Ó£º
update empset salary=(salary+bonus)*1.1
Õâ¸öÓï¾äÖУ¬¹ÍÔ±µÄ¹¤×ʺͽ±½ð¶¼½«¸üÐÂΪһ¸öеÄÖµ£¬µ«ÊÇÈç¹ûûÓн±½ð£¬¼´ salary + null,ÄÇô¾Í»áµÃ³ö´íÎóµÄ½áÂÛ£¬Õâ¸öʱºò¾ÍҪʹÓÃnvlº¯ÊýÀ´ÅųýnullÖµµÄÓ°Ïì¡£
ËùÒÔÕýÈ·µÄÓï¾äÊÇ£º
update empset salary=(salary+nvl(bonus,0)*1.1
µ¥ÐÐ×Ö·û´®º¯Êý
µ¥ÐÐ×Ö·û´®º¯ÊýÓÃÓÚ²Ù×÷×Ö·û´®Êý¾Ý£¬ËûÃÇ´ó¶àÊýÓÐÒ»¸ö»ò¶à¸ö²ÎÊý£¬ÆäÖоø´ó¶àÊý·µ»Ø×Ö·û´®
ASCII()
c1ÊÇÒ»×Ö·û´®£¬·µ»Øc1µÚÒ»¸ö×ÖĸµÄASCIIÂ룬ËûµÄÄæº¯ÊýÊÇCHR()
SELECT ASCII('A') BIG_A,ASCII('z') BIG_z from emp
BIG_A BIG_z
65 122
CHR(£¼i£¾)[NCHAR_CS]
iÊÇÒ»¸öÊý×Ö£¬º¯Êý·µ»ØÊ®½øÖƱíʾµÄ×Ö·û
Ïà¹ØÎĵµ£º
×î½ü×öÁ˼¸¸öССͳ¼ÆµÄ±¨±í½çÃæ£¬ÓÉÓÚ.net²»´øgroup by µÄ¹¦ÄÜ£¬Í³¼ÆÆðÀ´ÓÐʱºòÏ൱²»±ã£¬±ã³Ã×Å˯×ŵÄʱºòдÁËÒ»¸öÀàËÆµÄ·½·¨¡£
Óв»×ãÖ®´¦»òÊÇÓиüºÃµÄ·½·¨»¹Íû´ó¼ÒÖ¸Õý¡£
ÖÁÓÚЧÂÊÈçºÎ£¿Î´Öª£¬ÒòΪ±¾È˵IJâÊÔÊý¾Ý¾ÍÊDZȽÏÉÙ¡£
/// <summary>
/// SQL Group by
/// </summary>
/// &l ......
ORACLEºÍSQLÓï·¨Çø±ð¹éÄÉ
Êý¾ÝÀàÐͱȽÏ
ÀàÐÍÃû³Æ
Oracle
SQLServer
±È½Ï
×Ö·ûÊý¾ÝÀàÐÍ CHAR CHAR ¶¼Êǹ̶¨³¤¶È×Ö·û×ÊÁϵ«oracleÀïÃæ×î´ó¶ÈΪ2kb£¬SQLServerÀïÃæ×î´ó³¤¶ÈΪ8kb
±ä³¤×Ö·ûÊý¾ÝÀàÐÍ VARCHAR2 VARCHAR OracleÀïÃæ×î´ó³¤¶ÈΪ4kb£¬SQLServerÀïÃæ×î´ó³¤¶ÈΪ8kb
¸ù¾Ý×Ö·û¼¯¶ø¶¨µÄ¹Ì¶¨³¤¶È×Ö·û´® NCHAR NCHA ......
內Á¬½Ó½öÑ¡³öÁ½ÕűíÖл¥ÏàÆ¥ÅäµÄ¼Ç¼£®Òò´Ë£¬Õâ»áµ¼ÖÂÓÐʱÎÒÃÇÐèÒªµÄ¼Ç¼ûÓаüº¬½øÀ´¡£
Ϊ¸üºÃµÄÀí½âÕâ¸ö¸ÅÄÎÒÃǽéÉÜÁ½¸ö±í×÷ÑÝʾ¡£ËÕ¸ñÀ¼Òé»áÖеÄÕþµ³±í(party)ºÍÒéÔ±±í(msp)¡£¸´ÖÆÄÚÈݵ½¼ôÌù°å´úÂë:
party(Code,Name,Leader)
Code: Õþµ³´úÂë
Name: Õþµ³Ãû³Æ
Leader: Õþµ³ÁìÐä
msp(Nam ......
Copy ÒÔÏÂÄÚÈݵ½²éѯ·ÖÎöÆ÷²Ù×÷£º
-- 3 ****************************************************
-- ÊìϤϵͳ×Ô´øµÄһЩº¯Êý
-- 3.1 --------------------------------------------------
-- Êýѧº¯Êý
-- ABS(num_expression) ·µ»Ø¸ø¶¨ÊýÖµ±í´ïʽµÄ¾ø¶ÔÖµ
-- C ......
Òª»ñµÃÕýÔÚÔËÐеÄSQL Server 2005µÄ°æ±¾ºÅ£¬¿Éͨ¹ýSQL Server Management StudioÁ¬½Óµ½¸Ã·þÎñÆ÷£¬È»ºóÔËÐÐÒÔÏÂSQLÓï¾ä£º
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
Ðк󣬿ɵõ½ÐèÒªµÄ°æ±¾ÐÅÏ¢£¬ÀýÈçÔÚÎҵĻúÆ÷ÉÏÔËÐкóµÃµ ......