DBMS_SQL°üʵÏÖ¶¯Ì¬SQL
.ÔÚ²éѯÖлáÓöµ½ UNION ALL,ËüµÄÓ÷¨ºÍunionÒ»Ñù,Ö»²»¹ýunionº¬ÓÐdistinctµÄ¹¦ÄÜ,Ëü»á°ÑÁ½ÕűíÁËÖØ¸´µÄ¼Ç¼ȥµô,¶øunion all²»»á,ËùÒÔ´ÓЧÂÊÉÏ,union all »á¸ßÒ»µã.
2.union all Êǰ´ÔÏÈ˳ÐòÅÅÁеģ¬union °ÑÁ½ÕűíÖеÄÖØ¸´Êý¾ÝÈ¥µôºó»¹½øÐÐÁËÖØÐÂÅÅÐò
ÉùÃ÷£º´ËÎÄÀ´Ô´ÓÚÍøÂ·£¡
ÄÚÈÝÕªÒª£ºÔÚPL/SQL¿ª·¢¹ý³ÌÖУ¬Ê¹ÓÃSQL£¬PL/SQL¿ÉÒÔʵÏִ󲿷ݵÄÐèÇ󣬵«ÊÇÔÚÄ³Ð©ÌØÊâµÄÇé¿öÏ£¬ÔÚPL/SQLÖÐʹÓñê×¼µÄSQLÓï¾ä»òDMLÓï¾ä²»ÄÜʵÏÖ×Ô¼ºµÄÐèÇ󣬱ÈÈçÐèÒª¶¯Ì¬½¨±í»òij¸ö²»È·¶¨µÄ²Ù×÷ÐèÒª¶¯Ì¬Ö´ÐС£Õâ¾ÍÐèҪʹÓö¯Ì¬SQLÀ´ÊµÏÖ¡£±¾ÎÄͨ¹ý¼¸¸öʵÀýÀ´ÏêϸµÄ½²½â¶¯Ì¬SQLµÄʹÓᣡ¡¡¡
¡¡¡¡±¾ÎÄÊÊÒ˶ÁÕß·¶Î§£ºOracle³õ¼¶£¬Öм¶
¡¡¡¡ÏµÍ³»·¾³£º
¡¡¡¡¡¡OS£ºwindows 2000 Professional (Ó¢Îİæ)
¡¡¡¡¡¡Oracle£º8.1.7.1.0
¡¡¡¡ÕýÎÄ£º
¡¡¡¡Ò»°ãµÄPL/SQL³ÌÐòÉè¼ÆÖУ¬ÔÚDMLºÍÊÂÎñ¿ØÖƵÄÓï¾äÖпÉÒÔÖ±½ÓʹÓÃSQL£¬µ«ÊÇDDLÓï¾ä¼°ÏµÍ³¿ØÖÆÓï¾äÈ´²»ÄÜÔÚPL/SQLÖÐÖ±½ÓʹÓã¬ÒªÏëʵÏÖÔÚPL/SQLÖÐʹÓÃDDLÓï¾ä¼°ÏµÍ³¿ØÖÆÓï¾ä£¬¿ÉÒÔͨ¹ýʹÓö¯Ì¬SQLÀ´ÊµÏÖ¡£
¡¡¡¡Ê×ÏÈÎÒÃÇÓ¦¸ÃÁ˽âʲôÊǶ¯Ì¬SQL£¬ÔÚOracleÊý¾Ý¿â¿ª·¢PL/SQL¿éÖÐÎÒÃÇʹÓõÄSQL·ÖΪ£º¾²Ì¬SQLÓï¾äºÍ¶¯Ì¬SQLÓï¾ä¡£Ëùν¾²Ì¬ SQLÖ¸ÔÚPL/SQL¿éÖÐʹÓõÄSQLÓï¾äÔÚ±àÒëʱÊÇÃ÷È·µÄ£¬Ö´ÐеÄÊÇÈ·¶¨¶ÔÏó¡£¶ø¶¯Ì¬SQLÊÇÖ¸ÔÚPL/SQL¿é±àÒëʱSQLÓï¾äÊDz»È·¶¨µÄ£¬Èç¸ù¾ÝÓû§ÊäÈëµÄ²ÎÊýµÄ²»Í¬¶øÖ´Ðв»Í¬µÄ²Ù×÷¡£±àÒë³ÌÐò¶Ô¶¯Ì¬Óï¾ä²¿·Ö²»½øÐд¦Àí£¬Ö»ÊÇÔÚ³ÌÐòÔËÐÐʱ¶¯Ì¬µØ´´½¨Óï¾ä¡¢¶ÔÓï¾ä½øÐÐÓï·¨·ÖÎö²¢Ö´ÐиÃÓï¾ä¡£
¡¡¡¡OracleÖж¯Ì¬SQL¿ÉÒÔͨ¹ý±¾µØ¶¯Ì¬SQLÀ´Ö´ÐУ¬Ò²¿ÉÒÔͨ¹ýDBMS_SQL°üÀ´Ö´ÐС£ÏÂÃæ¾ÍÕâÁ½ÖÖÇé¿ö·Ö±ð½øÐÐ˵Ã÷£º
¡¡¡¡Ò»¡¢±¾µØ¶¯Ì¬SQL
¡¡¡¡±¾µØ¶¯Ì¬SQLÊÇʹÓÃEXECUTE IMMEDIATEÓï¾äÀ´ÊµÏֵġ£
¡¡¡¡1¡¢±¾µØ¶¯Ì¬SQLÖ´ÐÐDDLÓï¾ä£º
¡¡¡¡ÐèÇ󣺸ù¾ÝÓû§ÊäÈëµÄ±íÃû¼°×Ö¶ÎÃûµÈ²ÎÊý¶¯Ì¬½¨±í¡£
create or replace procedure proc_test
(
table_name in varchar2, --±íÃû
field1 in varchar2, --×Ö¶ÎÃû
datatype1 in varchar2, --×Ö¶ÎÀàÐÍ
field2 in varchar2, --×Ö¶ÎÃû
datatype2 in varchar2 --×Ö¶ÎÀàÐÍ
) as
str_sql varchar2(500);
begin
str_sql:=’create table ’||table_name||’(’||field1||’ ’||datatype1||’,’||field2||’ ’||datatype2||’)’;
execute immediate str_sql; --¶¯Ì¬Ö´ÐÐDDLÓï¾ä
exception
when others then
null
Ïà¹ØÎĵµ£º
sql2000º¯Êý´óÈ«1 µ±Ç°ÏµÍ³ÈÕÆÚ¡¢Ê±¼ä
select getdate()
2. dateadd ÔÚÏòÖ¸¶¨ÈÕÆÚ¼ÓÉÏÒ»¶Îʱ¼äµÄ»ù´¡ÉÏ£¬·µ»ØÐ嵀 datetime Öµ
ÀýÈ磺ÏòÈÕÆÚ¼ÓÉÏ2Ìì
select dateadd(day,2,'2004-10-15') --·µ»Ø£º2004-10-17 00:00:00.000
3. datediff ·µ»Ø¿çÁ½¸öÖ¸¶¨ÈÕÆÚµÄÈ ......
.Çå¿ÕÈÕÖ¾
DUMP TRANSACTION ¿âÃû WITH NO_LOG
2.½Ø¶ÏÊÂÎñÈÕÖ¾£º
BACKUP LOG ¿âÃû WITH NO_LOG
3.ÊÕËõÊý¾Ý¿âÎļþ(Èç¹û²»Ñ¹Ëõ,Êý¾Ý¿âµÄÎļþ²»»á¼õС
ÆóÒµ¹ÜÀíÆ÷--ÓÒ¼üÄãҪѹËõµÄÊý¾Ý¿â--ËùÓÐÈÎÎñ--ÊÕËõÊý¾Ý¿â--ÊÕËõÎļþ--Ñ¡ÔñÈÕÖ¾Îļþ--ÔÚÊÕËõ·½Ê½ÀïÑ¡ÔñÊÕËõÖÁXXM,ÕâÀï»á¸ø³öÒ»¸öÔÊÐíÊÕËõµ½µÄ×îСMÊý,Ö±½Ó ......
sql»ñÈ¡×Öĸ:
CREATE FUNCTION dbo.F_Get_STR (@S VARCHAR(100))
RETURNS VARCHAR(100)
AS
BEGIN
WHILE PATINDEX('%[^a-z]%',@S)>0
BEGIN
&n ......
±ÊÕßÔøÔÚ¡¶³ÌÐòÔ±¡·2009Äê11ÆÚÉÏ̽ÌÖTransact-SQLµÄÔª±à³Ì£¬¼´Í¨¹ýĿ¼ÊÓͼ¡¢ÔªÊý¾Ýº¯ÊýµÈ·½Ê½·ÃÎÊÊý¾Ý¿âµÄÔªÊý¾ÝÐÅÏ¢£¬ÔÚÖ´Ðйý³ÌÖж¯Ì¬Éú³ÉSQL½Å±¾¡£µ±Ê±ÏÞÓÚÆª·ù£¬Ëù¸øµÄÀý×Ó½ÏÉÙ¡£ÕâÀï¸ø³ö¶¯Ì¬Éú³ÉSQL½Å±¾µÄÒ»¸öµäÐÍÓ¦Ó㬰ÑÊý¾Ý±íµÄÄÚÈÝת»»ÎªÏàÓ¦µÄINSERTÓï¾ä¡£
Õâ¸öÆô·¢À´×ÔÎÒ¹ÜÀíÔ¶³ÌÊý¾Ý¿âµÄ¾Àú¡£ÎÒ³£³£ÐèÒªÓñ¾ ......