斷點

          每天進步一點點!
          posts - 174, comments - 56, trackbacks - 0, articles - 21

          復雜SQL學習

          Posted on 2010-07-24 16:42 斷點 閱讀(283) 評論(0)  編輯  收藏 所屬分類: SQL
          1、具體業務中用到的sql,這個是查找最近標志為1,且有多條記錄的數據。 (這個sql查找錯誤比較有用。)
          select a.c_ply_no ,count(1) from web_ply_base a
          where  a.c_latest_mrk='1'
          group by  a.c_ply_no
          having count(1)>1

           

          背景count(*)   count(1)   兩者比較,主要還是要count(1)所相對應的數據字段:
           
          如果你的數據表沒有主鍵,那么count(1)比count(*)快  
            如果有主鍵的話,那主鍵(聯合主鍵)作為count的條件也比count(*)要快  
            如果你的表只有一個字段的話那count(*)就是最快的啦
            如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。  
            因為count(*),自動會優化指定到那一個字段。所以沒必要去count(?),用count(*),sql會幫你完成
          優化的.
          其他語句:select * from 表名 where 條件 order by 字段名 asc\desc     // asc 升序    desc  降序

          2、C_Nme_En匹配多個 like 查詢。
          select distinct C_Spec_No
            from WEB_Prd_Fix_Spec
           WHERE C_Spec_No in (SELECT C_Spec_No
                                 FROM web_Prd_Prod_Spec_Rel
                                WHERE C_Prod_No = '0326'
                                  and C_Spec_No like '89%')
             and (C_Nme_En like '%000000%' or C_Nme_En like '%030006%' or
                 C_Nme_En like '%030061%')

          主站蜘蛛池模板: 东明县| 苗栗县| 鄂托克前旗| 兴和县| 太和县| 新疆| 珲春市| 河池市| 钦州市| 象州县| 瑞金市| 常州市| 吕梁市| 黑山县| 江津市| 敖汉旗| 巴塘县| 孝义市| 黔江区| 桦南县| 上思县| 渭南市| 大庆市| 中山市| 玛曲县| 建昌县| 玉环县| 襄樊市| 潮安县| 榆林市| 南木林县| 宁晋县| 太仓市| 文成县| 平阳县| 昔阳县| 永寿县| 东安县| 莒南县| 武义县| 贡山|