斷點

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

          復雜SQL學習

          Posted on 2010-07-24 16:42 斷點 閱讀(289) 評論(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%')

          主站蜘蛛池模板: 古丈县| 罗甸县| 赤城县| 中阳县| 山阳县| 通化市| 宕昌县| 左云县| 平度市| 沙洋县| 大足县| 罗定市| 托里县| 山西省| 宿松县| 邹城市| 大渡口区| 余庆县| 西林县| 上虞市| 冀州市| 托克托县| 高雄县| 巫山县| 天气| 贵德县| 建瓯市| 剑川县| 安泽县| 丽江市| 阿拉善右旗| 永登县| 灵璧县| 阿坝县| 五原县| 朝阳市| 龙泉市| 九江市| 柘城县| 抚州市| 汝州市|