SQL操作全集(部分是Mssql語(yǔ)句,不在access中使用)(3)_Mssql數(shù)據(jù)庫(kù)教程

      編輯Tag賺U幣
      教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

      推薦:揭秘SQL Server查詢優(yōu)化方法
      查詢速度慢的原因很多,常見如下幾種 1 、沒有索引或者沒有用到索引(這是查詢慢最常見的問題,是程序設(shè)計(jì)的缺陷) 2 、I / O吞吐量小,形成了瓶頸效應(yīng)。 3 、沒有創(chuàng)建計(jì)算列導(dǎo)致查詢不優(yōu)化。 4 、內(nèi)存不足 5 、網(wǎng)絡(luò)速度慢 6 、查詢出的數(shù)據(jù)量過大(可以采用多


      6、說明:外連接查詢(表名1:a 表名2:b) 
      select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c 

      7、說明:在線視圖查詢(表名1:a ) 
      select * from (SELECT a,b,c FROM a) T where t.a > 1; 

      8、說明:between的用法,between限制查詢數(shù)據(jù)范圍時(shí)包括了邊界值,not between不包括 
      select * from table1 where time between time1 and time2 
      select a,b,c, from table1 where a not between 數(shù)值1 and 數(shù)值2 

      9、說明:in 的使用方法 
      select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’) 

      10、說明:兩張關(guān)聯(lián)表,刪除主表中已經(jīng)在副表中沒有的信息 
      delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 

      11、說明:四表聯(lián)查問題: 
      select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where ..... 

      12、說明:日程安排提前五分鐘提醒 
      SQL: select * from 日程安排 where datediff(’minute’,f開始時(shí)間,getdate())>5 

      13、說明:一條sql 語(yǔ)句搞定數(shù)據(jù)庫(kù)分頁(yè) 
      select top 10 b.* from (select top 20 主鍵字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主鍵字段 = a.主鍵字段 order by a.排序字段 

      14、說明:前10條記錄 
      select top 10 * form table1 where 范圍 

      15、說明:選擇在每一組b值相同的數(shù)據(jù)中對(duì)應(yīng)的a最大的記錄的所有信息(類似這樣的用法可以用于論壇每月排行榜,每月熱銷產(chǎn)品分析,按科目成績(jī)排名,等等.) 
      select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b) 

      16、說明:包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重復(fù)行而派生出一個(gè)結(jié)果表 
      (select a from tableA ) except (select a from tableB) except (select a from tableC) 

      17、說明:隨機(jī)取出10條數(shù)據(jù) 
      select top 10 * from tablename order by newid() 

      18、說明:隨機(jī)選擇記錄 
      select newid() 

      19、說明:刪除重復(fù)記錄 
      Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 

      20、說明:列出數(shù)據(jù)庫(kù)里所有的表名 
      select name from sysobjects where type=’U’ 

      21、說明:列出表里的所有的 
      select name from syscolumns where id=object_id(’TableName’) 

      分享:揭秘加快數(shù)據(jù)庫(kù)查詢速度的方法
      1 、升級(jí)硬件 2 、根據(jù)查詢條件,建立索引,優(yōu)化索引、優(yōu)化訪問方式,限制結(jié)果集的數(shù)據(jù)量。 3 、擴(kuò)大服務(wù)器的內(nèi)存 4 、增加服務(wù)器CPU個(gè)數(shù) 5 、對(duì)于大的數(shù)據(jù)庫(kù)不要設(shè)置數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng),它會(huì)降低服務(wù)器的性能 6 、在查詢Select語(yǔ)句中用Where字句限制返回的行數(shù),

      來(lái)源:模板無(wú)憂//所屬分類:Mssql數(shù)據(jù)庫(kù)教程/更新時(shí)間:2010-04-23
      相關(guān)Mssql數(shù)據(jù)庫(kù)教程