SQL sever Ñ»·Óï¾ä
for i=0,i++,i<@num
select dateadd(DAY,GETDATE(),I)
ÇëÎÊÉÏÃæµÄÓï¾äÔõô¸Äд²ÅÕýÈ·£¿£¿£¿
Transact-SQL ²Î¿¼
WHILE
ÉèÖÃÖØ¸´Ö´ÐÐ SQL Óï¾ä»òÓï¾ä¿éµÄÌõ¼þ¡£Ö»ÒªÖ¸¶¨µÄÌõ¼þÎªÕæ£¬¾ÍÖØ¸´Ö´ÐÐÓï¾ä¡£¿ÉÒÔʹÓà BREAK ºÍ CONTINUE ¹Ø¼ü×ÖÔÚÑ»·ÄÚ²¿¿ØÖÆ WHILE Ñ»·ÖÐÓï¾äµÄÖ´ÐС£
Óï·¨
WHILE Boolean_expression
{ sql_statement | statement_block }
[ BREAK ]
{ sql_statement | statement_block }
[ CONTINUE ]
²ÎÊý
Boolean_expression
·µ»Ø TRUE »ò FALSE µÄ±í´ïʽ¡£Èç¹û²¼¶û±í´ïʽÖк¬ÓÐ SELECT Óï¾ä£¬±ØÐëÓÃÔ²À¨ºÅ½« SELECT Óï¾äÀ¨ÆðÀ´¡£
{sql_statement | statement_block}
Transact-SQL Óï¾ä»òÓÃÓï¾ä¿é¶¨ÒåµÄÓï¾ä·Ö×é¡£ÈôÒª¶¨ÒåÓï¾ä¿é£¬ÇëʹÓÿØÖÆÁ÷¹Ø¼ü×Ö BEGIN ºÍ END¡£
BREAK
µ¼Ö´Ó×îÄÚ²ãµÄ WHILE Ñ»·ÖÐÍ˳ö¡£½«Ö´ÐгöÏÖÔÚ END ¹Ø¼ü×ÖºóÃæµÄÈκÎÓï¾ä£¬END ¹Ø¼ü×ÖΪѻ·½áÊø±ê¼Ç¡£
CONTINUE
ʹ WHILE Ñ»·ÖØÐ¿ªÊ¼Ö´ÐУ¬ºöÂÔ CONTINUE ¹Ø¼ü×ÖºóµÄÈκÎÓï¾ä¡£
×¢ÊÍ
Èç¹ûǶÌ×ÁËÁ½¸ö»ò¶à¸ö WHILE Ñ»·£¬ÄÚ²ãµÄ BREAK ½«µ¼ÖÂÍ˳öµ½ÏÂÒ»¸öÍâ²ãÑ»·¡£Ê×ÏÈÔËÐÐÄÚ²ãÑ»·½áÊøÖ®ºóµÄËùÓÐÓï¾ä£¬È»ºóÏÂÒ»¸öÍâ²ãÑ»·ÖØÐ¿ªÊ¼Ö´ÐС£
ʾÀý
A. ÔÚǶÌ×µÄ IF...ELSE ºÍ WHILE ÖÐʹÓà BREAK ºÍ CONTINUE
ÔÚÏÂÀýÖУ¬Èç¹ûƽ¾ù¼Û¸ñÉÙÓÚ $30£¬WHILE Ñ»·¾Í½«¼Û¸ñ¼Ó±¶£¬È»ºóÑ¡Ôñ×î¸ß¼Û¡£Èç¹û×î¸ß¼ÛÉÙÓÚ»òµÈÓÚ $50£¬WHILE Ñ»·ÖØÐÂÆô¶¯²¢Ôٴν«¼Û¸ñ¼Ó±¶¡£¸ÃÑ»·²»¶ÏµØ½«¼Û¸ñ¼Ó±¶Ö±µ½×î¸ß¼Û¸ñ³¬¹ý $50£¬È»ºóÍ˳ö WHILE Ñ»·²¢´òÓ¡Ò»ÌõÏûÏ¢¡£
USE pubs
GO
WHILE (SELECT AVG(price) from titles) < $30
BEGIN
UPDATE titles
SET price = price * 2
SELECT MAX(price) from titles
IF (SELECT MAX(price) from titles) > $50
BREAK
ELSE
CONTINUE
END
PRINT 'Too much for the market to bear'
B. ÔÚ´øÓÐÓαêµÄ¹ý³ÌÖÐʹÓà WHILE
ÒÔÏ嵀 WHILE ½á¹¹ÊÇÃûΪ count_all_rows ¹ý³ÌÖеÄÒ»²¿·Ö¡£ÏÂÀýÖУ¬¸Ã WHILE ½á¹¹²âÊÔÓÃÓÚÓαêµÄº¯Êý @@FETCH_STATUS µÄ·µ»ØÖµ¡£ÒòΪ @@FETCH_STATUS ¿ÉÄÜ·µ»Ø –2¡¢-1 »ò 0£¬ËùÒÔ£¬ËùÓеÄÇé¿ö¶¼Ó¦½øÐвâÊÔ¡£Èç¹ûijһÐÐÔÚ¿ªÊ¼Ö´Ðд˴洢¹ý³ÌÒÔºó´ÓÓαê½á¹ûÖÐɾ³ý£¬½«Ìø¹ý¸ÃÐС£³É¹¦ÌáÈ¡ (0) ºó½«Ö´ÐÐ BEGIN...END Ñ»·ÄÚ²¿µÄ SELECT Óï¾ä¡£
USE pubs
DECLARE tnames_cursor CURSOR
FOR
SELECT TABLE_NAME
from INFORMATION_SCHEMA.TABLES
OPEN tnames_cursor
DECLARE @tablename
Ïà¹ØÎĵµ£º
1.¼¤»îSQL¸ú×Ù
´Óoracle10gÒÔºóÌṩÁËÐµķ½·¨¼¤»îSQLµÄ¸ú×Ù£¬¼´ÊÇʹÓÃdbms_monitor°üÀ´¿ªÆô»ò¹Ø±ÕSQL¸ú×Ù¡£
֮ǰ¾É·½·¨ÊÇʹÓà alter session set events .. »òÕßʹÓÃdbms_system.set_ev·½Ê½
ʹÓÃdbms_monitor°ü¿ÉÒÔÔڻỰ£¬¿Í»§¶Ë£¬×é¼þÒÔ¼°Êý¾Ý¿âËĸö²ã¼¶¿ªÆôSQLµÄ¸ú×Ù¡ ......
Student(S#,Sname,Sage,Ssex) ѧÉú±í
Course(C#,Cname,T#) ¿Î³Ì±í
SC(S#,C#,score) ³É¼¨±í
Teacher(T#,Tname) ½Ìʦ±í
ÎÊÌ⣺
1¡¢²éѯ“001”¿Î³Ì±È“002”¿Î³Ì³É¼¨¸ßµÄËùÓÐѧÉúµÄѧºÅ£»
select a.S# from (select s#,score from SC where C#='001') a,(select s#,score
fr ......
SQLÈ¡ÈÕÆÚ
SQL Server 2009-11-19 15:07:30 ÔĶÁ7 ÆÀÂÛ0 ×ֺţº´óÖÐС
·½·¨Ò»:
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( ......
ÏÈ¿ªÆô·þÎñÆ÷ÅäÖÃÑ¡Ï
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
EXEC sp_configure 'xp_cmdshell', 1
RECONFIGURE
/** µ¼³öÎı¾Îļþ
EXEC master..xp_cmdshell 'bcp dbname..tablename out c:\DT.txt -c -S servername -U sa -P password'
»ò
EXEC master..xp_cmdshell ' ......
¿´µ½µÄһƪ¹ØÓÚÊý¾Ý¿âÓÅ»¯µÄÎÄÕ£¬¾õµÃ¶Ô×Ô¼ºÓаïÖú£¬¾ÍתÌûµ½ÕâÀιʶøÖªÐ£¡
ÓÅ»¯Êý¾Ý¿âµÄ˼Ïë¼°SQLÓï¾äÓÅ»¯µÄÔÔò [תÌù 2005-08-18 14:20:05 ] ·¢±íÕß: chilizy
......