OracleÖкϲ¢×Ö·û´®×ܽá
ÔÚÊý¾Ý¿âÖо³£ÒªºÏ²¢×Ö·û´®£¬¶øºÏ²¢×Ö·û´®µÄ·½·¨Óкܶ࣬ÏÖÔÚ×ܽáÈçÏ£º
--´´½¨»á»°¼¶ÁÙʱ±í
create global temporary table TMPA
(
ID INTEGER,
NAME VARCHAR2(10)
)
on commit preserve rows;
--²åÈë¼Ç¼
insert into tmpa select 1,'aa' from dual;
insert into tmpa select 1,'bb' from dual;
insert into tmpa select 1,'cc' from dual;
insert into tmpa select 2,'dd' from dual;
insert into tmpa select 2,'ee' from dual;
insert into tmpa select 3,'ff' from dual;
commit;
--1¡¢sys_conect_by_path·½·¨
select id,max(ltrim(sys_connect_by_path(name,','),',')) as group_name
from
(
select a.*,row_number()over(partition by id order by name) as row_num
from tmpa a
) a
group by id
start with row_num=1
connect by prior id=id and prior row_num= row_num-1
--2¡¢wm_concat·½·¨
select id,wm_concat(name) as group_name from tmpa
group by id;
--3¡¢×Ô¶¨Ò庯Êý·¨
--¶¨Ò庯Êý
create function group_concat(vid number)
return varchar2
as
vResult varchar2(100);
begin
for cur in (select name from tmpa where id=vid) loop
vResult := vResult||cur.name;
end loop;
return vResult;
end;
--²éѯ
select id,group_concat(id) as group_name from tmpa
group by id;
--²éѯµÄ½á¹û
ID GROUP_NAME
1 aa,bb,cc
2 dd,ee
3 ff
Ïà¹ØÎĵµ£º
ËäȻѧϰJavaºÜ¾ÃÁË£¬×Ô¼ºÒ²Á¬½Ó¹ýһЩÊý¾Ý¿â£¬±ÈÈçmysqlÖ®ÀàµÄ£¬Èç½ñÄØ£¬Ò²Ñ§Ï°ÁËÒ»¶Îʱ¼äµÄOracle£¬È»¶øÄØ£¬½ñÌìÊÇÎÒµÚÒ»´ÎÁ¬½ÓOracle£¬ºÙºÙ£¬Ó¦¸Ã»¹²»ËãÌ«³Ù°É¡£
½ñÌìÄØ£¬Óе㱿׾£¬´ó¼ÒĪЦ£¡
ÎÒÕâÊÇÒ»¸ö²éѯÀý×Ó
Ê×ÏÈ£¬Ô ......
--´´½¨´¥·¢Æ÷£¨Ðм¶´¥·¢Æ÷£©
create or replace trigger tri_update_emp_bak
after update
on emp_bak
for each row --ÿ¸üÐÂÒ»ÐÐ ¾Í´¥·¢Ò»´Î
begin
--oracle ÀïÃæ ¶Ô´¥·¢Æ÷ Ò²ÌṩÁËÌØÊâµÄ¶ÔÏó :NEW :OLD À´·ÃÎÊ ¸üÐÂǰºóµÄÊý¾Ý
dbms_output.put_line('¸üкó' || :NEW.sal);
dbms_outpu ......
×÷ÕߣºÒ×ÎÄ¿¡
ÓÊÏ䣺yiwenjun@126.com
Ê×ÏÈÒª°ÑOracle µÄ¼àÌýºÍ·þÎñÁ½Ïî´ò¿ª
´ò¿ªodbcÊý¾ÝÔ´ÅäÖýçÃæ,Ñ¡ÔñϵͳDSN£¬Ìí¼Ó£¬Ñ¡ÔñOracleÇý¶¯³ÌÐò
¹Ø¼üÊÇÏÂÃæ²ÎÊýµÄÉèÖÃ
Data source name:×Ô¼ºÎª¸ÃÊý¾ÝÔ´ÃüµÄÃû
description:Ëæ±ã×Ô¼ºÃèÊöÀ²
TNS server name:ÏÂÀ²Ëµ¥ÓУ¨Èç¹ûûÓеϰ£¬¾Í×Ô¼ºÔÚnet configuration assist ......
1. ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2. CHR
¸ø³öÕûÊý,·µ»Ø¶ÔÓ¦µÄ×Ö·û;
SQL> select chr(54740) zhao,chr(65) chr65 from dual;
ZH C
-- ......
ƽʱÓõıȽ϶àµÄ£¬¾ÍÊÇNVL£¬Ã»ÔõôÔÚÒâÆäËû¼¸¸ö¡£
NVL ¾Í²»ÓÃ˵ÁË£¬¾ÍÊÇÅжϵÚÒ»¸öÊÇ·ñΪNULL£¬ÊǾÍÓõڶþ¸ö´úÌæ£¬²»ÊǾͷµ»ØµÚÒ»¸ö¡£
NVL2 Ò²ÊÇÅжϵÚÒ»¸öÊÇ·ñΪNULL£¬µ«ÊÇ·µ»ØÖµÈ´²»Í¬¡£µÚÒ»¸öΪNULL£¬¾Í·µ»ØµÚÈý¸ö£¬·ñÔò·µ»ØµÚ¶þ¸ö¡£
NULLIF ÅжÏÁ½¸ö²ÎÊýÊÇ·ñÏàµÈ£¬ÏàµÈ·µ»ØNULL£¬·ñÔò·µ»ØµÚÒ»¸ö²ÎÊý¡£
COALESCE Õâ ......