select *
from
(select [id]=row_number() over (order by getdate()),
date=convert(varchar(8),dateadd(dd,number,'2010-01-01'),112)
from
(select number from master..spt_values where type='p' )t ) X
join
(select '1' as id, 'A' as Col1 union all
select '2' as id,'B' as Col1 union all
select '3' as id ,'C' as Col1
) Y
on x.id % ( select count(*) + 1
from ( select '1' as id union all
select '2' as id union all
select '3' as id ) M)
=y.id
order by x.id ......
if exists(select * from sysobjects where name='atzk')--ÅжÏÊÇ·ñ´æÔڴ˱í
drop table atzk
go
create table atzk
(
nid int identity(1,1) primary key,--nid×Ô¶¯±àºÅ£¬²¢ÉèΪÖ÷¼ü¡£
mytitle varchar(50) not null,--֪ͨµÄ±êÌâ¡£
mycontents varchar(200)--·¢²¼Í¨ÖªµÄÄÚÈÝ¡£
) ......
Èç¹ûÄãµÄÊý¾Ý¿âÔËÐÐÔÚÍêÕû»òÊÇÅúÁ¿ÈÕÖ¾»Ö¸´Ä£Ê½Ï£¬ÄÇôÄã¾ÍÐèҪʹÓÃ×÷Òµ(job)À´¶¨ÆÚ±¸·ÝÊÂÎñÈÕÖ¾£¬±£³ÖÄãµÄÊÂÎñÎļþ´óС´¦ÔÚÒ»¸ö¿É¹ÜÀíµÄ·¶Î§¡£µ±ÄãÐèÒª»¹ÔÊÂÎñÈÕ־ʱ£¬Äã¾ÍÐèÒª°´ÕÕ´´½¨ÊÂÎñÈÕÖ¾µÄ˳ÐòÀ´»Ö¸´ËüÃÇ¡£Äã¿ÉÒԲο¼´æÔÚmsdb..backupset±íÖеÄÐÅÏ¢À´È·¶¨»¹ÔÎļþµÄ˳Ðò£¬Ê¹ÓÃFirstLSNºÍLastLSNÁеÄÖµ×÷²Î¿¼¡£µ±Ä㱸·Ýʱ£¬ÕâЩ±¸·ÝÐÅÏ¢¾Í»á´æÔÚbackupset±íÖÐ
Ö»ÒªÐòÁд¦ÓÚά»¤×´Ì¬Ï£¬Äã¾Í¿ÉÒÔʹÓöÔÓ¦µÄÈÕÖ¾°ÑÊý¾Ý»Ö¸´µ½ÈÎÒâ»Ö¸´µãÉÏ¡£²»ÐÒµÄÊÇ£¬ÓÐЩʵÀýµÄÐòÁÐÒѾ±»Ëð»µÁË¡£ÏÂÃæÁ½ÖÖÇé¿öÆÕͨÊÇÒýÆðË𻵵ÄÔÒò£º
Êý¾Ý¿âµÄ»Ö¸´Ä£Ðͱ»Çл»µ½Á˼òµ¥(SIMPLE)ºó£¬Ôٴα»Çл»»ØÍêÕû»òÊÇÅúÁ¿ÈÕÖ¾¡£
Backup logÃüÁîÔËÐÐʱ£¬¸½´øÁËTRUNCATE_ONLY/NO_LOGÑ¡Ïî¡£
µ±ÉÏÃæÁ½ÖÖÇé¿ö·¢Éúʱ£¬ÄãÐèÒª¼´¿É×öÒ»¸öÊý¾Ý¿âµÄÍêÕû±¸·Ý£¬×÷ΪÊÂÎñÈÕÖ¾»Ö¸´µÄеĻָ´µã¡£ÄÇôÄãÈçºÎÅжÏÐòÁÐÒѾ±»ÆÆ»µÁËÄØ£¿
ÔÚSQL Server 2000ÖУ¬ÕâȷʵÓеãÂé·³¡£¼ÙÈçÊý¾Ý¿â»Ö¸´Ä£ÐÍÒѾ±»¸ü¸ÄÁË£¬»òÊDZ¸·ÝʱÈÕÖ¾ÒѾ±»½Ø¶ÏÁË£¬ÄÇôµ±¸ü¸Äºó£¬ÄãµÚÒ»´Î±¸·ÝÊÂÎñÈÕ־ʱ£¬SQL Server 2000»áÏÔʾÈçÏÂÊä³ö£º
There is no current database backup. This log backup cannot be used to roll forward a pr ......
Sql Server ÓÐÈçϼ¸Ö־ۺϺ¯ÊýSUM¡¢AVG¡¢COUNT¡¢COUNT(*)¡¢MAX ºÍ MIN£¬µ«ÊÇÕâЩº¯Êý¶¼Ö»ÄܾۺÏÊýÖµÀàÐÍ£¬ÎÞ·¨¾ÛºÏ×Ö·û´®¡£Èçϱí:AggregationTable
Id Name
1 ÕÔ
2 Ç®
1 Ëï
1 Àî
2 ÖÜ
Èç¹ûÏëµÃµ½ÏÂͼµÄ¾ÛºÏ½á¹û
Id Name
1 ÕÔËïÀî
2 Ç®ÖÜ
ÀûÓÃSUM¡¢AVG¡¢COUNT¡¢COUNT(*)¡¢MAX ºÍ MINÊÇÎÞ·¨×öµ½µÄ¡£ÒòΪÕâЩ¶¼ÊǶÔÊýÖµµÄ¾ÛºÏ¡£²»¹ýÎÒÃÇ¿ÉÒÔͨ¹ý×Ô¶¨Ò庯ÊýµÄ·½Ê½À´½â¾öÕâ¸öÎÊÌâ¡£
1.Ê×ÏȽ¨Á¢²âÊÔ±í£¬²¢²åÈë²âÊÔÊý¾Ý£º
view plaincopy to clipboardprint?
create table AggregationTable(Id int, [Name] varchar(10))
go
insert into AggregationTable
select 1,'ÕÔ' union all
select 2,'Ç®' union all
select 1,'Ëï' union all
select 1,'Àî' union all
select 2,'ÖÜ'
go
create table AggregationTable(Id int, [Name] varchar(10))
go
insert into AggregationTable
select 1,'ÕÔ' union all
select 2 ......
ÈÕÖ¾ÐòÁбàºÅ(LSN)ÊÇÊÂÎñÈÕÖ¾ÀïÃæÃ¿Ìõ¼Ç¼µÄ±àºÅ¡£
µ±ÄãÖ´ÐÐÒ»´Î±¸·Ýʱ£¬Ò»Ð©LSNÖµ¾Í±»Í¬Ê±´æ´¢ÔÚÎļþ±¾Éí¼°msdb..backupset±íÖС£Äã¿ÉÒÔʹÓÃRESTORE HEADERONLYÓï·¨À´´Ó±¸·ÝÎļþÖлñÈ¡LSNÖµ¡£
×¢Ò⣺ÔÚSQL Server 2000ÖУ¬ÓÐÒ»ÁнÐ×öDifferentialBaseLSN¡£µ«ÔÚSQL Server 2005ÖУ¬ÏàͬµÄÁÐÃû³Æ±ä³ÉÁËDatabaseBackupLSN¡£Õý½âµÄÁÐÃûÓ¦¸ÃÊÇDatabaseBackupLSN£¬Õâ¸öÃû³Æ²ÅÄܱí´ï³öËüµÄÒâÒ壬Äã¿ÉÒÔ´ÓSQL Server 2000µÄÁª»ú´ÔÊéÖÐÕÒµ½Ïà¹ØËµÃ÷¡£
FirstFSNÖµÊDZ¸·ÝÉ豸ÖеÚÒ»¸öÊÂÎñµÄÈÕÖ¾ÐòÁкţ¬LastLSNÖµÊÇ×îºóÒ»¸ö¡£CheckpointLSNÖµÊÇ×î½üÒ»´ÎcheckpointÈÕÖ¾µÄÐòÁкš£DatabaseBackupLSNÊÇ×î½üÒ»´ÎÊý¾Ý¿âÍêÕû±¸·ÝµÄÈÕÖ¾ÐòÁкš£
ÄÇôLSNÖµ¶ÔÎÒÃÇÀ´Ëµ£¬ÓÐʲô¼ÛֵĨ£¿¶ÔÓÚ²îÒ챸·ÝÉ豸À´Ëµ£¬DatabaseBackupLSNÖµ¿ÉÒÔ¸æËßÎÒÃÇÊý¾Ý¿âÍêÕû±¸·Ý¶¼ÐèÒªÄÄЩ²îÒ챸·Ý¡£ÄãÐèÒªÕÒ³öËùÓÐCheckpointLSNÖµÏàͬµÄÍêÕû±¸·ÝºÍ²îÒ챸·Ý¡£
¶ÔÓÚÒ»¸öÊÂÎñÈÕÖ¾±¸·ÝÀ´Ëµ£¬ÔÚÊý¾Ý¿â»¹Ô¹ý³ÌÖУ¬FirstLSNºÍLastLSNÖµ¿ÉÒÔ°ïÖúÎÒÃǶÔÊÂÎñÈÕÖ¾Îļþ°´ÐòºÅ½øÐÐÅÅÐò¡£
¼ÙÈçÊý¾Ý¿âÕý´¦ÓÚ»¹Ô״̬£¬¶øÇÒÕýÔڵȴýÁíÍâµÄ»¹ÔÊÂÎñÈÕÖ¾£¬ÄÇÄãÔõôÄÜ·Ö±æ³öËüµ±Ç°µÄLastLSNÖµ£¬ÒÔ±ãÄã×Ô¼ºÇå³þÏÂÒ ......
ÔÚÇÚÕÜEXCEL·þÎñÆ÷ÖÐÓÐ×óÓÒÄÚÁ¬½ÓµÄ²Ù×÷£¬ÎÒÃÇÔÚÕâÀïÓÃSQLÓï¾äÀ´Êµ¼Ê˵Ã÷Ò»ÏÂÖ®¼äµÄÇø±ðÓë×÷Óá£
= ÄÚÁ¬½Ó SQLÖÐΪinner join
*= ×óÁ¬½Ó °üº¬ËùÓеÄ×ó±ß±íÖеļǼÉõÖÁÊÇÓұ߱íÖÐûÓкÍËüÆ¥ÅäµÄ¼Ç¼¡£ SQLÖÐΪleft join
=* ÓÒÁ¬½Ó °üº¬ËùÓеÄÓұ߱íÖеļǼÉõÖÁÊÇ×ó±ß±íÖÐûÓкÍËüÆ¥ÅäµÄ¼Ç¼¡£ SQLÖÐΪright join
ÔÚSQLÓï¾äÖУº
¿ÉÒÔÔÚ from ×Ó¾äÖÐʹÓÃINNER JOINÔËËã¡£.ÕâÊÇ×îÆÕͨµÄÁª½ÓÀàÐÍ¡£Ö»ÒªÔÚÕâÁ½¸ö±íµÄ¹«¹²×Ö¶ÎÖ®ÖÐÓÐÏà·ûÖµ£¬ÄÚ²¿Áª½Ó½«×éºÏÁ½¸ö±íÖеļǼ¡£
Óà LEFT JOIN ÔËËã ´´½¨×ó±ßÍⲿÁª½Ó.×ó±ßÍⲿÁª½Ó½«°üº¬ÁË´ÓµÚÒ»¸ö£¨×ó±ß£©¿ªÊ¼µÄÁ½¸ö±íÖеÄÈ«²¿¼Ç¼£¬¼´Ê¹ÔÚµÚ¶þ¸ö£¨Óұߣ©±íÖв¢Ã»ÓÐÏà·ûÖµµÄ¼Ç¼¡£
ÓÃRIGHT JOIN ÔËËã ´´½¨ ÓÒ±ßÍⲿÁª½Ó.ÓÒ±ßÍⲿÁª½Ó½«°üº¬ÁË´ÓµÚ¶þ¸ö£¨Óұߣ©¿ªÊ¼µÄÁ½¸ö±íÖеÄÈ«²¿¼Ç¼£¬¼´Ê¹ÔÚµÚÒ»¸ö£¨×ó±ß£©±íÖв¢Ã»ÓÐÆ¥ÅäÖµµÄ¼Ç¼¡£
ÀýÈ磬¿ÉÒÔʹÓà LEFT JOIN Ó벿ÃÅ£¨×ó±ß£©¼°Ô±¹¤£¨Ó ......