ÇóÖúoracleÖÐSQL¶¯Ì¬Ö´ÐеÄÎÊÌ⣬¼±£¡£¡
±íÃûÊǶ¯Ì¬´«½øÈ¥µÄ£¬ÇëÎÊ¿ÉÒÔ½¨ÕâÑùµÄfunctionÂ𣿠function²ÎÊýΪ±íÃû£¬IDºÍ×Ö¶ÎÃû£» ÀïÃæÀûÓÃÕâ¸ö±íÃûÆ´Ò»¸öSQLÓï¾äÈ¡³ö¸Ã×ֶεÄÖµÓÃÓαêÖ´Ðн«½á¹ûfetch³öÀ´·µ»Ø¡£ functionÖеÄSQL´®ÊDz»ÊDz»ÄÜÆ´±íÃûºÍ×ֶΣ¬Ö»ÄÜÆ´×ֶεÄÖµ£¿ ´ó¼ÒÄܲ»Äܰï°ïÎÒ£¬Ó¦¸ÃÔõôŪ£¬Íò·Ö¸Ðл£¡£¡£¡
SQL code: create or replace function fun(v_table in varchar2, id in number, v_col in varchar2) return varchar2 is v varchar2(2000); begin execute immediate 'select '||v_col||' from '||v_table||' where id = '||id into v; return v; end fun; / Ó¦¸ÃûÎÊÌâµÄ°É£¬ ÄãÊǵĶ¯Ì¬SQL£¬ÊDz»ÊÇÖ¸ ref cursorÒýÓà SQL codecreateorreplacefunction fun(v_tableinvarchar2, idinnumber, v_colinvarchar2)returnvarchar2is vvarchar2(2000);beginexecute immediate'select'||v_col||' from'||v_table||' where id ='||idinto v;return v;end fun;/ ±àÒëµÄʱºòûÎÊÌ⣬µ«ÊÇÖ´ÐеÄʱºò˵ÕâÒ»ÐÐ execute immediate 'select '||v_col||' from
Ïà¹ØÎÊ´ð£º
±íÈçÏ ½ÌÊÒID ×ùλÊý ¿ªÊ¼Ê±¼ä ½áÊøÊ±¼ä 2009Äê1ÔÂ1ÈÕ 2009Äê1ÔÂ2ÈÕ 2009Äê1ÔÂ3ÈÕ 101 50 08£º00 08£º30 30 40 50 101 50 09£º00 ......
select convert(varchar(50),cast(convert(numeric(18,2),1275674000000/100000000)as real))+'ÒÚ' select cast(convert(numeric(18,2),1275674000000/100000000)as real) ΪʲôÉÏÒ»¸öÓÃvarcharת»»ºó¾ÍÖ»±£ÁôÁËÒ ......
ÔÊý¾Ý ÉÌÆ· Ô¼Û ´òÕÛ·½Ê½1 ÕÛ¿Û1 ´òÕÛ·½Ê½2 ÕÛ¿Û2 ±Ê¼Ç±¾ 10000 NULL 0 NULL&nb ......
ÇëÎÊһϣ¬ÍâÍøÁ½Ì¨SQLSERVERʵÀýÊý¾Ý´«Ê䣬ÓÐûÓвÉÓÃÊý¾ÝѹËõºÍ¼ÓÃÜ¡£Ñ¹Ëõ±ÈÊǶàÉÙ£¬¼ÓÃÜÊÇʲô¼ÓÃÜËã·¨£¿Ïà¹ØÎĵµÄÄÀï¿ÉÒÔÕÒµ½£¿Ð»Ð» ÎÒÒ²ÏëÖªµÀ£¡¹Ø×¢´ËÌù£¡ ¹Ø×¢¡«¡« Êý¾Ý¿â´óÅ£¶¼ÄÄÈ¥Á˰¡£¿ ......