关于SQL操作的一些经验
生活随笔
收集整理的這篇文章主要介紹了
关于SQL操作的一些经验
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 有一個(gè)規(guī)則關(guān)于group by的使用
SELECT PointNum, MAX(InsertTime) AS InsertTime FROM PointData GROUP BY PointNum?
所有的Select的字段,除聚合函數(shù)中的字段,都必須在Group by中出現(xiàn),這個(gè)語(yǔ)句可以很好地查詢依賴于2個(gè)字段限制的信息(一個(gè)作為Group by分組,一個(gè)作為聚合函數(shù)的參數(shù)),且查詢結(jié)果只顯示這兩個(gè)字段,如果想要顯示其他字段,如下操作使用LEFT JOIN
SELECT C.PointNum,C.PointState,C.PointBattery,C.GPSTime,C.GPSWd,C.GPSJd,C.SensorState,B.InsertTime FROM (SELECT PointNum, MAX(InsertTime) AS InsertTime FROM PointData GROUP BY PointNum) B LEFT JOIN PointData C ON B.InsertTime = C.InsertTime AND B.PointNum = C.PointNum2. 查詢結(jié)果相當(dāng)于一個(gè)表,對(duì)于查詢結(jié)果,可以直接使用 ?(SELECT ...) B,用B來(lái)表示這個(gè)查詢結(jié)果。
3. AS的使用,AS在字段的重命名、添加新字段等方面用處很大,如
SELECT PointInfo.PointNum, PointInfo.PointName,'接收' as Direction,MsgLog.MsgContent,MsgLog.InsertTime FROM MsgLog LEFT OUTER JOIN PointInfo ON MsgLog.PointNum = PointInfo.PointNum可以成功在查詢結(jié)果添加新的一列Direction,并且這個(gè)新列的所有值均為“接收”。
總結(jié)
以上是生活随笔為你收集整理的关于SQL操作的一些经验的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 临时变量管理器
- 下一篇: [转]PowerDesigner使用教程