斷點

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

          復雜SQL學習

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

          主站蜘蛛池模板: 东乌珠穆沁旗| 堆龙德庆县| 镇沅| 宁强县| 江川县| 淅川县| 丹寨县| 沁阳市| 泸西县| 麻栗坡县| 醴陵市| 武陟县| 宣化县| 晋州市| 咸宁市| 佛冈县| 阿拉善盟| 耒阳市| 阿拉尔市| 临安市| 龙游县| 新田县| 思南县| 蒙自县| 中西区| 黄骅市| 乌审旗| 文登市| 平武县| 日喀则市| 嘉义市| 宜川县| 桃园市| 太保市| 越西县| 仁怀市| 海安县| 临西县| 永福县| 兴国县| 徐汇区|