Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : sql

SQL server2005ÖÐÓÃpivotʵÏÖÐÐÁÐת»»

 --> --> (Roy)Éú³É²âÊÔÊý¾Ý
if not object_id('Class') is null
drop table Class
Go
Create table Class([Student] nvarchar(2),[Course] nvarchar(2),[Score] int)
Insert Class
select N'ÕÅÈý',N'ÓïÎÄ',78 union all
select N'ÕÅÈý',N'Êýѧ',87 union all
select N'ÕÅÈý',N'Ó¢Óï',82 union all
select N'ÕÅÈý',N'ÎïÀí',90 union all
select N'ÀîËÄ',N'ÓïÎÄ',65 union all
select N'ÀîËÄ',N'Êýѧ',77 union all
select N'ÀîËÄ',N'Ó¢Óï',65 union all
select N'ÀîËÄ',N'ÎïÀí',85
Go
¶¯Ì¬:
declare @s nvarchar(4000)
Select  @s=isnull(@s+',','')+quotename([Course]) from Class group by[Course]
exec('select * from Class pivot (max([Score]) for [Course] in('+@s+'))b')
Éú³É¾²Ì¬:
select *
from
Class
pivot
(max([Score]) for [Course] in([Êýѧ],[ÎïÀí],[Ó¢Óï],[ÓïÎÄ]))b
Éú³É¸ñʽ:
/*
Student Êýѧ          ÎïÀí          Ó¢Óï          ÓïÎÄ
------- -------- ......

ÔÚOracle 9iÖÐÐ޸ıíµÄ½á¹¹µÄÏà¹ØsqlÓï¾ä

ÓÃsql*plus»òµÚÈý·½¿ÉÒÔÔËÐÐsqlÓï¾äµÄ³ÌÐòµÇ¼Êý¾Ý¿â£º
Ôö¼ÓÒ»¸öÁУº
ALTER TABLE ±íÃû ADD(ÁÐÃû Êý¾ÝÀàÐÍ);
È磺
ALTER TABLE emp ADD(weight NUMBER(38,0));
ÐÞ¸ÄÒ»¸öÁеÄÊý¾ÝÀàÐÍ(Ò»°ãÏÞÓÚÐ޸ij¤¶È£¬ÐÞ¸ÄΪһ¸ö²»Í¬ÀàÐÍʱÓÐÖî¶àÏÞÖÆ):
ALTER TABLE ±íÃû MODIFY(ÁÐÃû Êý¾ÝÀàÐÍ);
È磺
ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);
Demo:
ALTER TABLE PY_CCORDER ADD(
 CCORD_REFUNDEDTIMES INTEGER,
 CCORD_REFUNDEDAMOUNT NUMBER(15,2)
);
¸øÁиÄÃû£º
ALTER TABLE ±íÃû RENAME COLUMN µ±Ç°ÁÐÃû TO ÐÂÁÐÃû;
È磺
ALTER TABLE emp RENAME COLUMN weight TO weight_new;
ɾ³ýÒ»¸öÁУº
ALTER TABLE ±íÃû DROP COLUMN ÁÐÃû;
È磺
ALTER TABLE emp DROP COLUMN weight_new;
½«Ò»¸ö±í¸ÄÃû£º
ALTER TABLE µ±Ç°±íÃû RENAME TO бíÃû;
È磺
ALTER TABLE bouns RENAME TO bonus_new ......

ÔÚOracle 9iÖÐÐ޸ıíµÄ½á¹¹µÄÏà¹ØsqlÓï¾ä

ÓÃsql*plus»òµÚÈý·½¿ÉÒÔÔËÐÐsqlÓï¾äµÄ³ÌÐòµÇ¼Êý¾Ý¿â£º
Ôö¼ÓÒ»¸öÁУº
ALTER TABLE ±íÃû ADD(ÁÐÃû Êý¾ÝÀàÐÍ);
È磺
ALTER TABLE emp ADD(weight NUMBER(38,0));
ÐÞ¸ÄÒ»¸öÁеÄÊý¾ÝÀàÐÍ(Ò»°ãÏÞÓÚÐ޸ij¤¶È£¬ÐÞ¸ÄΪһ¸ö²»Í¬ÀàÐÍʱÓÐÖî¶àÏÞÖÆ):
ALTER TABLE ±íÃû MODIFY(ÁÐÃû Êý¾ÝÀàÐÍ);
È磺
ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);
Demo:
ALTER TABLE PY_CCORDER ADD(
 CCORD_REFUNDEDTIMES INTEGER,
 CCORD_REFUNDEDAMOUNT NUMBER(15,2)
);
¸øÁиÄÃû£º
ALTER TABLE ±íÃû RENAME COLUMN µ±Ç°ÁÐÃû TO ÐÂÁÐÃû;
È磺
ALTER TABLE emp RENAME COLUMN weight TO weight_new;
ɾ³ýÒ»¸öÁУº
ALTER TABLE ±íÃû DROP COLUMN ÁÐÃû;
È磺
ALTER TABLE emp DROP COLUMN weight_new;
½«Ò»¸ö±í¸ÄÃû£º
ALTER TABLE µ±Ç°±íÃû RENAME TO бíÃû;
È磺
ALTER TABLE bouns RENAME TO bonus_new ......

¹ØÓÚSQLÖÐcountµÄЧÂÊ

COUNT(*)ÓëCOUNT(COL)
ÍøÉÏËÑË÷ÁËÏ£¬·¢ÏÖ¸÷ÖÖ˵·¨¶¼ÓУº
±ÈÈçÈÏΪCOUNT(COL)±ÈCOUNT(*)¿ìµÄ£»
ÈÏΪCOUNT(*)±ÈCOUNT(COL)¿ìµÄ£»
»¹ÓÐÅóÓѺܸãЦµÄ˵µ½Õâ¸öÆäʵÊÇ¿´ÈËÆ·µÄ¡£
ÔÚ²»¼ÓWHEREÏÞÖÆÌõ¼þµÄÇé¿öÏ£¬COUNT(*)ÓëCOUNT(COL)»ù±¾¿ÉÒÔÈÏΪÊǵȼ۵ģ»
µ«ÊÇÔÚÓÐWHEREÏÞÖÆÌõ¼þµÄÇé¿öÏ£¬COUNT(*)»á±ÈCOUNT(COL)¿ì·Ç³£¶à£»
¾ßÌåµÄÊý¾Ý²Î¿¼ÈçÏ£º
mysql> SELECT COUNT(*) from cdb_posts where fid = 604;
+————+
| COUNT(fid) |
+————+
| 79000 |
+————+
1 row in set (0.03 sec)
mysql> SELECT COUNT(tid) from cdb_posts where fid = 604;
+————+
| COUNT(tid) |
+————+
| 79000 |
+————+
1 row in set (0.33 sec)
mysql> SELECT COUNT(pid) from cdb_posts where fid = 604;
+————+
| COUNT(pid) |
+————+
| 79000 |
+————+
1 row in set (0.33 sec)
COUNT(*)ͨ³£ÊǶÔÖ÷¼ü½øÐÐË÷ÒýɨÃ裬¶øCOUNT(COL)¾Í² ......

SQL×¢Èë

      Ëæ×ÅB/SģʽӦÓÿª·¢µÄ·¢Õ¹£¬Ê¹ÓÃÕâÖÖģʽ±àдӦÓóÌÐòµÄ³ÌÐòÔ±Ò²Ô½À´Ô½¶à¡£µ«ÊÇÓÉÓÚÕâ¸öÐÐÒµµÄÈëÃÅÃż÷²»¸ß£¬³ÌÐòÔ±µÄˮƽ¼°¾­ÑéÒ²²Î²î²»Æ룬Ï൱´óÒ»²¿·Ö³ÌÐòÔ±ÔÚ±àд´úÂëµÄʱºò£¬Ã»ÓжÔÓû§ÊäÈëÊý¾ÝµÄºÏ·¨ÐÔ½øÐÐÅжϣ¬Ê¹Ó¦ÓóÌÐò´æÔÚ°²È«Òþ»¼¡£Óû§¿ÉÒÔÌá½»Ò»¶ÎÊý¾Ý¿â²éѯ´úÂ룬¸ù¾Ý³ÌÐò·µ»ØµÄ½á¹û£¬»ñµÃijЩËûÏëµÃÖªµÄÊý¾Ý£¬Õâ¾ÍÊÇËùνµÄSQL Injection£¬¼´SQL×¢Èë¡£
     SQL×¢ÈëÊÇ´ÓÕý³£µÄWWW¶Ë¿Ú·ÃÎÊ£¬¶øÇÒ±íÃæ¿´ÆðÀ´¸úÒ»°ãµÄWebÒ³Ãæ·ÃÎÊûʲôÇø±ð£¬ËùÒÔÄ¿Ç°ÊÐÃæµÄ·À»ðǽ¶¼²»»á¶ÔSQL×¢Èë·¢³ö¾¯±¨£¬Èç¹û¹ÜÀíԱû²é¿´IISÈÕÖ¾µÄÏ°¹ß£¬¿ÉÄܱ»ÈëÇֺܳ¤Ê±¼ä¶¼²»»á·¢¾õ¡£
     µ«ÊÇ£¬SQL×¢ÈëµÄÊÖ·¨Ï൱Áé»î£¬ÔÚ×¢ÈëµÄʱºò»áÅöµ½ºÜ¶àÒâÍâµÄÇé¿ö¡£Äܲ»Äܸù¾Ý¾ßÌåÇé¿ö½øÐзÖÎö£¬¹¹ÔìÇÉÃîµÄSQLÓï¾ä£¬´Ó¶ø³É¹¦»ñÈ¡ÏëÒªµÄÊý¾Ý£¬ÊǸßÊÖÓ듲ËÄñ”µÄ¸ù±¾Çø±ð¡£
Èë Êƪ
     Èç¹ûÄãÒÔǰûÊÔ¹ýSQL×¢ÈëµÄ»°£¬ÄÇôµÚÒ»²½ÏÈ°ÑIE²Ëµ¥=>¹¤¾ß=>InternetÑ¡Ïî=>¸ß¼¶=>ÏÔʾÓѺà HTTP ´íÎóÐÅϢǰÃæµÄ¹´È¥µô¡£·ñÔò£¬²»ÂÛ·þÎñÆ÷·µ»Øʲô´íÎó£¬IE¶¼Ö»ÏÔʾΪHTTP 500·þÎñÆ÷´ ......

SQL SERVER 2008 ±íÖµ²ÎÊý

/*
SQL SERVER 2008 ±íÖµ²ÎÊý
 
    SQL SERVER ÒýÈëÁË¿¹ÒéÓÃÀ´½«Ðм¯´«Èëµ½´æ´¢¹ý³ÌºÍÓû§¶¨Ò庯ÊýµÄ±íÖµ²ÎÊý.
Õâ¸ö¹¦ÄÜ¿ÉÒÔʹ´æ´¢¹ý³ÌºÍº¯Êý¾ßÓзâ×°¶à¸öÐм¯µÄ¹¦ÄÜ,¶ø²»ÊDZØÐëÒ»ÐÐÒ»Ðеص÷
Êý¾ÝÐ޸Ĺý³ÌºÍ´©¼þ¶à¸öÊäÈë²ÎÊýÀ´ÉúÓ²µÄת»¯Îª¶àÐÐ.
 
    ÎÒÃÇÔÚÓ¦ÓÃÖо­³£Óõ½µÄ²åÈëʱ°Ñ´úÂë·â×°µ½´æ´¢¹ý³ÌÖС£
   
*/
    CREATE DATABASE TESTDB
   
    USE TESTDB
    GO
   
    CREATE TABLE USERINFO(USERID INT,USERNAME NVARCHAR(50))
    GO
   
    CREATE PROC USP_INSERT_USERINFO
    @ID INT,
    @NAME NVARCHAR(50)
    AS
       INSERT USERINFO
       VALUES(@ID,@NAME)
      
    GO
/* 
    ÉÏÃæµÄ»·¾³½¨Á¢ºÃºó£¬Èç¹ûÎÒÃÇÐèÒªÏò± ......

oracle sql*plus set &spool½éÉÜ(Ò»)

1). ÉèÖõ±Ç°sessionÊÇ·ñ¶ÔÐ޸ĵÄÊý¾Ý½øÐÐ×Ô¶¯Ìá½» :SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}
SQL> set autocommit off
2)£®ÔÚÓÃstartÃüÁîÖ´ÐÐÒ»¸ösql½Å±¾Ê±£¬ÊÇ·ñÏÔʾ½Å±¾ÖÐÕýÔÚÖ´ÐеÄSQLÓï¾ä :SET ECHO {ON|OFF}
SQL> set echo on
3).ÊÇ·ñÏÔʾµ±Ç°sqlÓï¾ä²éѯ»òÐ޸ĵÄÐÐÊý
SQL> SET FEED[BACK] {6|n|ON|OFF}
ĬÈÏÖ»Óнá¹û´óÓÚ6ÐÐʱ²ÅÏÔʾ½á¹ûµÄÐÐÊý¡£Èç¹ûset feedback 1 £¬Ôò²»¹Ü²éѯµ½¶àÉÙÐж¼·µ»Ø¡£µ±Îªoff ʱ£¬Ò»Âɲ»ÏÔʾ²éѯµÄÐÐÊý
 SQL> set feed off
SQL> select * from dual;
D
-
X
SQL> set feed on
SQL> select * from dual;
D
-
X
ÒÑÑ¡Ôñ 1 ÐС£(Çø±ðÓÚ´Ë)
4).ÊÇ·ñÏÔʾÁбêÌâ
SQL> SET HEA[DING] {ON|OFF}
µ±set heading off ʱ£¬ÔÚÿҳµÄÉÏÃæ²»ÏÔʾÁбêÌ⣬¶øÊÇÒÔ¿Õ°×ÐдúÌæ
SQL> set hea on
SQL> select * from a;
        ID SNAME                                   ......

oracle sql*plus set &spool½éÉÜ(Ò»)

1). ÉèÖõ±Ç°sessionÊÇ·ñ¶ÔÐ޸ĵÄÊý¾Ý½øÐÐ×Ô¶¯Ìá½» :SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}
SQL> set autocommit off
2)£®ÔÚÓÃstartÃüÁîÖ´ÐÐÒ»¸ösql½Å±¾Ê±£¬ÊÇ·ñÏÔʾ½Å±¾ÖÐÕýÔÚÖ´ÐеÄSQLÓï¾ä :SET ECHO {ON|OFF}
SQL> set echo on
3).ÊÇ·ñÏÔʾµ±Ç°sqlÓï¾ä²éѯ»òÐ޸ĵÄÐÐÊý
SQL> SET FEED[BACK] {6|n|ON|OFF}
ĬÈÏÖ»Óнá¹û´óÓÚ6ÐÐʱ²ÅÏÔʾ½á¹ûµÄÐÐÊý¡£Èç¹ûset feedback 1 £¬Ôò²»¹Ü²éѯµ½¶àÉÙÐж¼·µ»Ø¡£µ±Îªoff ʱ£¬Ò»Âɲ»ÏÔʾ²éѯµÄÐÐÊý
 SQL> set feed off
SQL> select * from dual;
D
-
X
SQL> set feed on
SQL> select * from dual;
D
-
X
ÒÑÑ¡Ôñ 1 ÐС£(Çø±ðÓÚ´Ë)
4).ÊÇ·ñÏÔʾÁбêÌâ
SQL> SET HEA[DING] {ON|OFF}
µ±set heading off ʱ£¬ÔÚÿҳµÄÉÏÃæ²»ÏÔʾÁбêÌ⣬¶øÊÇÒÔ¿Õ°×ÐдúÌæ
SQL> set hea on
SQL> select * from a;
        ID SNAME                                   ......
×ܼǼÊý:4346; ×ÜÒ³Êý:725; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [14] [15] [16] [17] 18 [19] [20] [21] [22] [23]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ