ORACLE NULLÏê½â
ÎÊ£ºÊ²Ã´ÊÇNULL£¿
´ð£ºÔÚÎÒÃDz»ÖªµÀ¾ßÌåÓÐʲôÊý¾ÝµÄʱºò£¬Ò²¼´Î´Öª£¬¿ÉÒÔÓÃNULL£¬ÎÒÃdzÆËüΪ¿Õ£¬ORACLEÖУ¬º¬ÓпÕÖµµÄ±íÁ㤶ÈΪÁã¡£
ORACLEÔÊÐíÈκÎÒ»ÖÖÊý¾ÝÀàÐ͵Ä×Ö¶ÎΪ¿Õ£¬³ýÁËÒÔÏÂÁ½ÖÖÇé¿ö£º
1¡¢Ö÷¼ü×ֶΣ¨primary key£©£¬
2¡¢¶¨ÒåʱÒѾ¼ÓÁËNOT NULLÏÞÖÆÌõ¼þµÄ×Ö¶Î
˵Ã÷£º
1¡¢µÈ¼ÛÓÚûÓÐÈκÎÖµ¡¢ÊÇδ֪Êý¡£
2¡¢NULLÓë0¡¢¿Õ×Ö·û´®¡¢¿Õ¸ñ¶¼²»Í¬¡£
3¡¢¶Ô¿ÕÖµ×ö¼Ó¡¢¼õ¡¢³Ë¡¢³ýµÈÔËËã²Ù×÷£¬½á¹ûÈÔΪ¿Õ¡£
4¡¢NULLµÄ´¦ÀíʹÓÃNVLº¯Êý¡£
5¡¢±È½ÏʱʹÓùؼü×ÖÓÓis null”ºÍ“is not null”¡£
6¡¢¿ÕÖµ²»Äܱ»Ë÷Òý£¬ËùÒÔ²éѯʱÓÐЩ·ûºÏÌõ¼þµÄÊý¾Ý¿ÉÄܲ鲻³öÀ´£¬count(*)ÖУ¬ÓÃnvl(ÁÐÃû,0)´¦ÀíºóÔٲ顣
7¡¢ÅÅÐòʱ±ÈÆäËûÊý¾Ý¶¼´ó£¨Ë÷ÒýĬÈÏÊǽµÐòÅÅÁУ¬Ð¡→´ó£©£¬ËùÒÔNULLÖµ×ÜÊÇÅÅÔÚ×îºó¡£
ʹÓ÷½·¨£º
SQL> select 1 from dual where null=null;
ûÓв鵽¼Ç¼
SQL> select 1 from dual where null='';
ûÓв鵽¼Ç¼
SQL> select 1 from dual where ''='';
ûÓв鵽¼Ç¼
SQL> select 1 from dual where null is null;
1
---------
1
SQL> select 1 from dual where nvl(null,0)=nvl(null,0);
1
---------
1
¶Ô¿ÕÖµ×ö¼Ó¡¢¼õ¡¢³Ë¡¢³ýµÈÔËËã²Ù×÷£¬½á¹ûÈÔΪ¿Õ¡£
SQL> select 1+null from dual;
SQL> select 1-null from dual;
SQL> select 1*null from dual;
SQL> select 1/null from dual;
ÒÔÉÏËÄÌõÓï¾ä¾ù²éѯµ½Ò»¸ö¼Ç¼.
×¢£ºÕâ¸ö¼Ç¼¾ÍÊÇSQLÓï¾äÖеÄÄǸönull
ÉèÖÃijЩÁÐΪ¿ÕÖµ
update table1 set ÁÐ1=NULL where ÁÐ1 is not null;
ÏÖÓÐÒ»¸öÉÌÆ·ÏúÊÛ±ísale£¬±í½á¹¹Îª£º
month¡¡ char(6)¡¡ --Ô·Ý
sellnumber(10,2)¡¡--ÔÂÏúÊÛ½ð¶î
create table sale (month char(6),sell number);
insert into sale values('200001',1000);
insert into sale values('200002',1100);
insert into sale values('200003',1200);
insert into sale values('200004',1300);
insert into sale values('200005',1400);
insert into sale values('200006',1500);
insert into sale values('200007',1600);
insert into sale values('200101',1100);
insert into sale values('200202',
Ïà¹ØÎĵµ£º
ÊÕ¼¯µÄ¼¸ÌõÔÚoracleÖÐͨ¹ýconnect by priorÀ´ÊµÏֵݹé²éѯ
Start with...Connect By×Ó¾äµÝ¹é²éѯһ°ãÓÃÓÚÒ»¸ö±íά»¤Ê÷ÐνṹµÄÓ¦Óá£
´´½¨Ê¾Àý±í£º
CREATE TABLE TBL_TEST
(
ID NUMBER,
NAME VARCHAR2(100 BYTE),
PID NUMBER ......
1£®Êýѧº¯Êý
¢Ù¾ø¶ÔÖµ
l S£ºselect abs(-1) value
l O£ºselect abs(-1) value from dual
¢ÚÈ¡Õû(´ó)
l S£ºselect ceiling(-001) value
l O£ºselect ceil(-001) value from dual
¢ÛÈ¡Õû£¨Ð¡£©
l S£ºselect floor(-001) value  ......
//¼ÆËãºÁÃë²î(Á½¸ödateÀàÐ͵ÄÏà¼õΪÌìÊý²î±ð£¬È»ºóת»»ÎªºÁÃë)
select ceil(to_date('209-11-17 13:00:12','yyyy-mm-dd hh24:mi-ss')-to_date(2009-11-18 14:00:12','yyyy-mm-dd hh24:mi-ss') )from dual;
//¼ÆËãÏà²îÔ·Ý
select (EXTRACT(year from to_date('209-11-17','yyyy-mm-dd'))-EXTRACT(year from  ......
³õ³õѧϰoracle 10g,×î»ù±¾µÄÎÊÌâ¾ÍÊǰ²×°Êý¾Ý¿â,³õ³õ°²×°Êý¾Ý¿âʱ,°²×°Óë±ðÈ˵ͼ²î²»¶à,¾ÍÊÇÔÚ×îºóʱ,²»ÄÜ×ÔÐÐÅä×°Êý¾Ý¿â,Òª×Ô¼ºÅäÖÃÊý¾Ý¿â,×îºó¾¹ý×Ô¼ºµÄÅŲé:ÔÚ°²×°ÏµÍ³Ê±,ϵͳµÄ¼ÆËã»úÃû³Æ(×¢²á¼ÆËã»úʱÓõÄ)ΪӢÎÄ,Óû§Ãû³ÆÎªÖÐÎÄ,Òò´Ë²»ÄÜ×ÔÐÐÅäÖÃÊý¾Ý¿â,
¾¹ý±¾È˵Ķà´ÎʵÑé,ÔÚ¼ÆËã»úÃû³Æ¡¢Óû§ÃûΪӢÎĵÄ×´Ì¬Ï ......
¹Ø¼ü×Ö: oracle job ¼ä¸ôʱ¼ä trunc
¼ÙÉèÄãµÄ´æ´¢¹ý³ÌÃûΪPROC_RAIN_JM
ÔÙдһ¸ö´æ´¢¹ý³ÌÃûΪPROC_JOB_RAIN_JM
ÄÚÈÝÊÇ£º
Create Or Replace Procedure PROC_JOB_RAIN_JM Is li_jobno Number; &nb ......