Oracle ѧϰ£ºPL/SQLÑÐò½¥½øÈ«Ãæѧϰ½Ì³Ì
¿Î³ÌËÄ ×麯Êý
¡¡¡¡
¡¡¡¡±¾¿ÎÖص㣺
¡¡¡¡1¡¢Á˽â¿ÉÓõÄ×麯Êý
¡¡¡¡2¡¢ËµÃ÷ÿ¸ö×麯ÊýµÄʹÓ÷½·¨
¡¡¡¡3¡¢Ê¹ÓÃGROUP BY
¡¡¡¡4¡¢Í¨¹ýHAVINGÀ´ÏÞÖÆ·µ»Ø×é
¡¡¡¡×¢Ò⣺ÒÔÏÂʵÀýÖбêµã¾ùΪӢÎÄ°ë½Ç
¡¡¡¡Ò»¡¢¸ÅÄ
¡¡¡¡×麯ÊýÊÇÖ¸°´Ã¿×é·µ»Ø½á¹ûµÄº¯Êý¡£
¡¡¡¡×麯Êý¿ÉÒÔ³öÏÖÔÚSELECTºÍHAVING ×Ö¶ÎÖС£
¡¡¡¡GROUP BY°ÑSELECT µÄ½á¹û¼¯·Ö³É¼¸¸öС×é¡£
¡¡¡¡HAVING À´ÏÞÖÆ·µ»Ø×飬¶ÔRESULT SET¶øÑÔ¡£
¡¡¡¡¶þ¡¢×麯Êý£º(#ºÅµÄº¯Êý²»×öÖصã)
¡¡¡¡1¡¢AVG
¡¡¡¡2¡¢COUNT
¡¡¡¡3¡¢MAX
¡¡¡¡4¡¢MIN
¡¡¡¡5¡¢STDDEV¡¡#
¡¡¡¡6¡¢SUM
¡¡¡¡7¡¢VARIANCE¡¡#
¡¡¡¡Óï·¨£º
¡¡¡¡SELECT column, group_function
¡¡¡¡from table
¡¡¡¡[WHERE condition]
¡¡¡¡[GROUP BY group_by_expression]
¡¡¡¡[HAVING group_condition]
¡¡¡¡[ORDER BY column];
¡¡¡¡ÊµÀý1£ºÒ»¸ö»ìºÏʵÀý£¬ËµÃ÷ËùÓÐÎÊÌ⣺
¡¡¡¡SQL> SELECT AVG(salary), MAX(salary), MIN(salary),
¡¡¡¡2 SUM(salary)
¡¡¡¡3 from s_emp
¡¡¡¡4 WHERE UPPER(title) LIKE ’SALES%’;
¡¡¡¡AVG(SALARY) MAX(SALARY) MIN(SALARY) SUM(SALARY)
¡¡¡¡----------- ----------- ----------- -----------
¡¡¡¡1476¡¡¡¡¡¡ 1525¡¡¡¡¡¡¡¡¡¡1400¡¡¡¡¡¡¡¡7380
¡¡¡¡ËµÃ÷£ººÜ¶àº¯Êý£¬ÎÒÃÇÔÚ½²º¯ÊýµÄÒѾÏò´ó¼Ò½éÉܹý£¬µ«ÔÚ´ËΪºÎ½Ð·Ö×麯ÊýÄØ£¬Ö÷ÒªÊÇÒòΪËüÃÇ¿ÉÒÔÓëGROUP
BYÀ´ÐγɶԲ»Í¬×éµÄ¼ÆË㣬Ï൱ÓÚÔںܶàÖµÖнøÐÐÌôÑ¡¡£
¡¡¡¡* MIN MAXº¯Êý¿ÉÒÔ½ÓÈκÎÊý¾ÝÀàÐÍ¡£
¡¡¡¡Èç¹ûÊÇMIN(last_name), MAX(last_name)£¬·µ»ØµÄÊÇʲôÄØ£¿
¡¡¡¡Ç§Íò¼Çס£¬²»ÊÇÖ¸LAST_NAMEµÄ³¤¶È£¬¶øÊÇÖ¸ÔÚFIRST×ÖĸµÄÇ°ºó˳Ðò£¬µÚÒ»¸öÏàͬ£¬È»ºó±È½ÏµÚ¶þ¸ö£¬È磺xdopt
¡¡> cssingkdkdk¡¡>¡¡ adopt¡¡> acccc
¡¡¡¡ÊµÀý2£º
¡¡¡¡SQL> SELECT COUNT(commission_pct)
¡¡¡¡2 from s_emp
¡¡¡¡3 WHERE dept_id = 31;
¡¡¡¡·µ»ØËùÓзǿÕÐиöÊý
¡¡¡¡Èý¡¢GROUP BYµÄÓ¦Óãº
¡¡¡¡ÏÈ¿´Ò»¸ö¼òµ¥ÊµÀý£º
¡¡¡¡SQL> SELECT credit_rating, COUNT(*) ”# Cust”
¡¡¡¡2 from s_customer
¡¡¡¡3 GROUP BY credit_rating;
¡¡¡¡×¢ÒâÕâÀï±ðÃûµÄÓ¦Ó㬸´Ï°Ò»Ï´ÓÇ°µÄ¿Î³Ì£¬¼ÓÁËÒýºÅºó£¬¾Í¿ÉÒÔÓÃÌØÊâ×Ö·û£¬µ«Ò²½öÓÐÈý¸ö£º#$_£¬Ê²Ã´¶ÔÏóµÄ
Ãû×Ö¶¼Èç´Ë¡£µ±È»¿Õ¸ñÒ²ÊÇ¿ÉÒԵġ£
¡¡¡¡¸´ÔÓʵÀý£º
¡¡¡¡SQL> SELECT title, SUM(salary) PAYROLL
¡¡¡¡2 from s_emp
¡¡¡¡3 WHERE title NOT LIKE ’VP%’
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
Õâsql Óï¾äдµÄÕæµÄºÜ²»´í!
if object_id('[tb]') is not null drop table [tb]
go
create table [tb]([col1] bigint,[col2] varchar(6),[col3] varchar(6))
insert [tb]
select 130126200201000275,'ÍõÎÄϼ','½ù´¨´¨' union all
select 130126200201000275,'ÍõÎÄϼ','½ù澤' union all
select 13012620 ......
SQLʱ¼äº¯Êý
--ÈÕÆÚת»»²ÎÊý,ÖµµÃÊÕ²Ø
select CONVERT(varchar, getdate(), 120 )2004-09-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')20040912110608
select CONVERT(varchar(12) , getdate(), 111 )2004/09/12
select CONVERT(varchar(12) , get ......
ÔÚ´æ´¢¹ý³ÌÖо³£ÐèÒªÖ´ÐгÌÐò×é³ÉµÄSQLÓï¾ä£¬¿ÉÒÔʹÓÃexec(@sql),
Ò²¿ÉÒÔʹÓÃexec sp_executesql @sql¡£µ«Ê¹ÓÃsp_executesqlÒªÓÅÓÚexec£¬½¨ÒéʹÓà sp_executesql ¶ø²»ÒªÊ¹Óà EXECUTE Óï¾äÖ´ÐÐ×Ö·û´®¡£Ö§³Ö²ÎÊýÌæ»»²»½öʹ sp_executesql ±È EXECUTE ¸üͨÓ㬶øÇÒ »¹Ê¹ sp_executesql ¸üÓÐЧ£ ......
ORACLE 10GÖÐÐÂÔöµÄMODEL×Ó¾ä¿ÉÒÔÓÃÀ´½øÐÐÐмä¼ÆËã¡£MODEL×Ó¾äÔÊÐíÏñ·ÃÎÊÊý×éÖÐÔªËØÄÇÑù·ÃÎʼǼÖеÄij¸öÁС£Õâ¾ÍÌṩÁËÖîÈçµç×Ó±í¸ñ¼ÆËãÖ®ÀàµÄ¼ÆËãÄÜÁ¦¡£
1¡¢MODEL×Ó¾äʾÀý
ÏÂÃæÕâ¸ö²éѯ»ñÈ¡2003ÄêÄÚÓÉÔ±¹¤#21Íê³ÉµÄ²úÆ·ÀàÐÍΪ#1ºÍ#2µÄÏúÁ¿£¬²¢¸ù¾Ý2003ÄêµÄÏúÊÛÊý¾ÝÔ¤²â³ö2004Äê1Ô¡¢2Ô¡¢3ÔµÄÏúÁ¿¡£
......