SQL Server 2005ÖеÄT SQLÔöÇ¿C
ͨÓñí±í´ïʽ Common Table Expressions
ͨÓñí±í´ïʽ£¨CTE£©ÊÇÒ»¸ö¿ÉÒÔÓɶ¨ÒåÓï¾äÒýÓõÄÁÙʱ±íÃüÃûµÄ½á¹û¼¯¡£ÔÚËûÃǵļòµ¥ÐÎʽÖУ¬Äú¿ÉÒÔ½«CTEÊÓΪÀàËÆÓÚÊÓͼºÍÅÉÉú±í»ìºÏ¹¦ÄܵĸĽø°æ±¾¡£ÔÚ²éѯµÄfrom×Ó¾äÖÐÒýÓÃCTEµÄ·½Ê½ÀàËÆÓÚÒýÓÃÅÉÉú±íºÍÊÓͼµÄ·½Ê½¡£Ö»Ð붨ÒåCTEÒ»´Î£¬¼´¿ÉÔÚ²éѯÖжà´ÎÒýÓÃËü¡£ÔÚCTEµÄ¶¨ÒåÖУ¬¿ÉÒÔÒýÓÃÔÚͬһÅú´¦ÀíÖж¨ÒåµÄ±äÁ¿¡£µ«ÊÇCTEµÄÕæÕýÍþÁ¦ÔÚÓÚËüÃǵĵݹ鹦ÄÜ£¬¼´CTE¿ÉÒÔ°üº¬¶ÔËüÃÇ×ÔÉíµÄÒýÓá£
ÊÓͼ¡¢ÅÉÉú±íºÍCTEÄÚ²¿µÄ²éѯµÄÒ»°ãÐÎʽ
1¡¢ÊÓͼ
CREATE VIEW <view_name>(<column_aliases>) AS <view_query>
2¡¢ÅÉÉú±í
SELECT * from (<derived_table)query>) AS <dericed_table_alias>(<column_aliases>)
3¡¢CTE
WITH <cte_alias>(<column_aliases>)
AS
{
<cte_query>
)
SELECT * from <cte_alias]>
Ôڹؼü×ÖWITHÖ®ºó£¬ÎªCTEÌṩһ¸ö±ðÃû£¬²¢ÇÒΪËüµÄ½á¹ûÁÐÌṩһ¸ö¿ÉÑ¡µÄ±ðÃûÁÐ±í£»±àдCTEµÄÖ÷Ì壻Ȼºó´ÓÍⲿ²éѯÖÐÒýÓÃËü¡£
with aa(id1,id2 )
as
(select xsrq,count(spbm)
from ecv_saledetail where xsrq>='2010-01-01' and xsrq<='2010-01-10'
group by xsrq)
select * from aa
Ïà¹ØÎĵµ£º
sqlµ¼³öµ½Excel
´ÓExcelÎļþÖÐ,µ¼ÈëÊý¾Ýµ½SQLÊý¾Ý¿âÖÐ,ºÜ¼òµ¥,Ö±½ÓÓÃÏÂÃæµÄÓï¾ä:
/*===================================================================*/
--Èç¹û½ÓÊÜÊý¾Ýµ¼ÈëµÄ±íÒѾ´æÔÚ
insert into ±í select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1 ......
¶ÔÓÚÒ»¸öÊý¾Ý¿âÍêÕû±¸·ÝÀ´Ëµ£¬±¸·ÝµÄËٶȺܴó³Ì¶ÈÉÏÈ¡¾öÓÚÏÂÃæÁ½¸öÒòËØ£º¶Á´ÅÅÌÊý¾Ý¡¢ÈÕÖ¾ÎļþµÄÍÌÍÂÁ¿£¬Ð´´ÅÅÌÊý¾ÝÎļþµÄÍÌÍÂÁ¿¡£
ÏÂͼÊDZ¸·Ý¹ý³ÌÖдÅÅ̵ı仯Çé¿ö£º
¶ÁÍÌÍÂÁ¿
¶ÁÍÌÍÂÁ¿µÄ´óСȡ¾öÓÚ´ÅÅ̶ÁÈ¡Êý¾ÝµÄËÙ¶È£¬¶ø´ÅÅ̶ÁÈ¡µÄËÙ¶ÈÓÖÈ¡¾öÓÚÊý¾ÝÎļþÔÚ´ÅÅÌÖеÄλÖá£Òò´Ë£¬Î»ÓÚ²»Í¬ÅÌ·ûÉϲ»Í¬Êý¾Ý¿âÎļþµÄ¶ÁÈ¡Ë ......
Èç¹ûÄúÊý¾Ý¿âϵͳ°²×°ÔÚϵͳÅÌ£¨±ÈÈç C ÅÌ£©£¬ÓÉÓÚ C ÅÌÈÝÒ×Êܲ¡¶¾ÇÖº¦£¬ÄúÒ²ÐíÏ£ÍûÄúµÄÊý¾Ý´æ·ÅÔÚ·ÇϵͳÅÌ£¨±ÈÈç D ÅÌ£©£¬Òª×öµÄÕâµãºÜ¼òµ¥£¬Äú²¢²»ÐèÒªÖØ×°Êý¾Ý¿â£¬Ö»Òª°ÑÊý¾Ý“·ÖÀ딣¬È»ºó½«Ïà¹ØÎļþÒÆ¶¯µ½ D Å̵Äij¸öĿ¼£¬½Ó×Å“¸½¼Ó”Êý¾Ý¿â¼´¿É¡£
SQL Server 2000ÔÊÐí·ÖÀëÊý¾Ý¿âµÄÊý¾ÝºÍÊÂÎñÈ ......
ÔÎÄ:http://www.blogjava.net/Unmi/archive/2009/01/05/249956.html
ÔÚ Oracle Êý¾Ý¿âÖУ¬ÎÒÃÇͨ³£ÔÚ²»Í¬Êý¾Ý¿âµÄ±í¼ä¼Ç¼½øÐи´ÖÆ»òÇ¨ÒÆÊ±»áÓÃÒÔϼ¸ÖÖ·½·¨£º
1. A ±íµÄ¼Ç¼µ¼³öΪһÌõÌõ·ÖºÅ¸ô¿ªµÄ insert Óï¾ä£¬È»ºóÖ´ÐвåÈëµ½ B ±íÖÐ
2. ½¨Á¢Êý¾Ý¿â¼äµÄ dblink£¬È»ºóÓà create table B as select * from A ......
-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓбí
SELECT table_name from user_tables;
-- ²é¿´ORACLE Êý¾Ý¿âÖÐËùÓÐÓû§ÏµÄËùÓбí
select user,table_name from all_tables;
-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓÐÁÐ
select table_name,column_name from user_tab_columns;
-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓÐÁÐ
se ......