Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Sql Sever¼Ç¼µÄÐÐÁÐת»»

ÒÑÖªÒ»¸ö±íµÄ½á¹¹Îª£º
ÐÕÃû ¿ÆÄ¿ ³É¼¨
ÕÅÈý ÓïÎÄ 20
ÕÅÈý Êýѧ 30
ÕÅÈý Ó¢Óï 50
ÀîËÄ ÓïÎÄ 70
ÀîËÄ Êýѧ 60
ÀîËÄ Ó¢Óï 90
ÔõÑùͨ¹ýselectÓï¾ä°ÑËû±ä³ÉÒÔϽṹ£º
ÐÕÃû ÓïÎÄ Êýѧ Ó¢Óï
ÕÅÈý 20 30 50
ÀîËÄ 70 60 90
´ð:
CREATE TABLE [dbo].[Stu] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[Name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Class] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[score] [int] NOT NULL
) ON [PRIMARY]
GO
select * from Stu
insert into Stu values('ÂíÀï','ÓïÎÄ',80)
insert into Stu values('ÂíÀï','Êýѧ',96)
insert into Stu values('¸¶Ë§','ÓïÎÄ',85)
insert into Stu values('¸¶Ë§','Êýѧ',85)
insert into Stu values('ÌÆ×ÓÒâ','ÓïÎÄ',30)
insert into Stu values('ÌÆ×ÓÒâ','Êýѧ',50)
insert into Stu values('Íõº£³½','Ó¢Óï',35)
declare @sql nvarchar(4000)
set @sql=''
select @sql = @sql + ',sum(case class when '''+ class + ''' then score else 0 end) as ' +class from stu group by class
set @sql = 'select name '+@sql+' from stu group by name'
print @sql
exec(@sql)
(
¿ÉÒÔÊÔÊÔÕâ¸ö:
declare @sql nvarchar(4000)
set @sql=''
select @sql = @sql + class from stu
print @sql
)
ÁíÒ»ÖÖ:
--´´½¨´æ´¢¹ý³Ì
create proc dbo.usp_data
as
--¶¨ÒåÒ»¸öÓαê
DECLARE cur_class CURSOR
 FOR
--´Óstu±íÖлñµÃËùÓеĿÆÄ¿²¢ÇÒÅÅÐò
SELECT distinct class from stu ORDER BY class
--´ò¿ªÓαê
OPEN cur_class
--¶¨ÒåÓαêÑ­»·µÄÐÐÊý
DECLARE @cursor_row INT
--¶¨ÒåÑ­»·¹ý³ÌÖÐÐèÒªµÄ»ñµÃµÄ¿ÆÄ¿Ãû³Æ£¬Óô˱äÁ¿±£´æ
DECLARE @class nvarchar(100)
--ÉèÖÃÓαêµÄÐÐÊý
SET @cursor_row = @@CURSOR_ROWS
--¶¨ÒåÑ­»·ÖÐÐèҪƴ½ÓµÄ×Ö·û´®
declare @sql nvarchar(4000)
declare @insert_sql nvarchar(4000)
declare @case_sql nvarchar(4000)
declare @sum_sql nvarchar(4000)
--´´½¨ÁÙʱ±íµÄÓï¾ä¹Ì¶¨²¿·Ö
set @sql = 'create table #temp (ÐÕÃû nvarchar(100),'
set @insert_sql = 'insert into #temp(ÐÕÃû,'
set @case_sql = ''
set @sum_sql = ''
--print @cursor_row
--°´ÕÕÓαêÑ­»·£¬¼´°´¿ÆÄ¿Ñ­»·
WHILE(@cursor_row > 0)
BEGIN
 SET @cursor_row = @cursor_row - 1
 FETC


Ïà¹ØÎĵµ£º

´ÓSQLÊý¾Ý¿âÀïËæ»ú¶ÁȡһÌõ¼Ç¼



ÔõÑù´ÓÊý¾Ý¿âÀïËæ»ú¶ÁÈ¡
Ò»Ìõ¼Ç¼£¬
SELECT TOP 1 * from dbo.Customers ORDER BY  NEWID()
ÕâÑù£¬Èç¹ûÊÇËæ»ú10
Ìõ£¬100Ìõ¡£¡£¡£¡£
SELECT TOP 10 * from dbo.Customers ORDER BY  NEWID()
ºÜ¼òµ¥°É¡£
²»¹ýtopºóÃæÊý×ÖÔ½´ó£¬ÔËÐÐËÙ¶ÈÔ½Âý¡£²»ÍƼöÊý¾Ý×ÖÌ«´ó¡£
ÒÔºó´úÂëÔÚSQL2000 ......

ÓÃSQLÓï¾äÆ´½ÓÊý¾Ý¿â±íÖÐÒ»ÁеÄÊý¾Ý

×î½üÔÚÒ»¸öÏîÄ¿ÖÐÓöµ½ÐèÒªÔÚÊý¾Ý²ã¾ÍÆ´½Ó±íÖÐÒ»ÁÐÊý¾ÝµÄÎÊÌâ¡£
ÀýÈ磬test±íÖÐÓиö×Ö¶Ît,tÁÐÖеÄ4ÐÐÊý¾ÝΪ1,2,3,4 £¬ÒªÆ´½Ó³É1+2+3+4£¬×ÁÄ¥ÁËÒ»Õ󣬱¾À´ÏëÓÃÓα꣬µ«ÊÇЧÂÊ¡£¡£ºóÀ´ÕÒµ½Ò»¶ÎSQL£¬¿ÉÒԺܷ½±ãµØÆ´½Ó¡£
DECLARE @STR VARCHAR(8000) ----¶¨Òå²éѯ×Ö·û´®
SELECT @STR=ISNULL(@STR+'+','')+t from (SELECT DIST ......

SQL server2005ÖÐÎļþ±¸·ÝÓë»Ö¸´

±¸·Ý
BACKUP DATABASE mydb
TO DISK='c:\olddb.bak'
WITH INIT
--ΪÁ˲âÊÔ£¬°Ñ±¸·ÝºÃµÄÎļþ´ÓCÅÌÒÆ¶¯µ½D:\tempdb Îļþ¼Ð
--»¹Ô­
--1.ÓôËÓï¾äµÃµ½±¸·ÝÎļþµÄÂß¼­ÎļþÃû£º
RESTORE FILELISTONLY from DISK = N'd:\tempdb\olddb.bak' --±¸·ÝÎļþ´æ·Å·¾¶
--¿´LogicalName£¬Ò»°ã»áÓÐÁ½¸öÎļþ,È磺
--olddb &nbs ......

SQLÂÒÂëµÄÎÊÌâ

ÔÚSQL   Server   Unicode×Ö·û´®³£Á¿ÐèҪǰ׺N  
   
  µ±ÔÚSQL  
SERVERÀï±ß´¦Àí×Ö·û´®³£Á¿µÄʱºòÄã±ØÐëÔÚ³£Á¿Ö®Ç°·ÅÒ»¸ö´óдµÄN,¾ÍÏñSQL  
SERVERÁ¬»úÎĵµ±êÌâΪ"²ÉÓÃUnicodeÊý¾Ý"Ëù˵Ã÷µÄÄÇÑù.Nǰ׺ÏóÕ÷×ÅÔÚSQL-92  
±ê×¼µÄ¹ú¼ÒÓïÑÔ,²¢ÇÒ±ØÐëÊÇ´óд×Öĸ.Èç¹ûÄãÔ ......

Àí½âSQL ServerÖеÄË÷Òý£¨Ò»£©

¶ÔÓںܶàDBAºÍ³ÌÐòÔ±À´Ëµ£¬SQL ServerÖеÄË÷Òý²»ÊÇÒ»¸öİÉúµÄÊÂÎÎÒÃÇÉõÖÁÿÌì¶¼ÔÚʹÓÃËü£¬¶ÔÓÚÄÄЩÇé¿öÏÂÓ¦¸Ã´´½¨Ë÷Òý¶¼ÄÜÒ»Ò»µÄµÀ³ö£¬²»¹ýÓпÉÄÜÎÒÃDz¢Ã»ÓÐ×ÐϸȥÏëËüµÄ¾ßÌåÔ­Àí£¬±¾ÎĽ«¸ù¾ÝÎÒ¶ÔSQL ServerÖеÄË÷ÒýµÄÀí½â×öÒ»¸ö¼òµ¥µÄ×ܽáºÍ¸ÅÊö£¬Ï£Íû¶Ô´ó¼ÒÄÜÓÐËù°ïÖú£¨Ïêϸ¿É²Î¿¼¡¶SQL Server 2005 Implementation an ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ