zoukankan      html  css  js  c++  java
  • SQL列最大重复项

     SELECT 1 AS co1, 'a' AS co2
    INTO #a 
    UNION
    SELECT  2, 'a'
    UNION
    SELECT  11,'a'
    UNION
    SELECT 12, 'a'
    UNION
    SELECT 13, 'a'
    UNION
    SELECT 14, 'a'
    UNION
    SELECT 15, 'a'
    UNION
    SELECT 3, 'b'
    UNION
    SELECT 7, 'b'
    UNION
    SELECT 8, 'b'
    UNION
    SELECT  9, 'b'
    UNION
    SELECT  10, 'b'
    UNION
    SELECT 4, 'c'
    UNION
    SELECT 5, 'c'
    UNION
    SELECT 6, 'c'
    
    SELECT * FROM #a
      --第二步:操作
      SELECT co2,MAX(counts) counts FROM 
    (
     SELECT rowid,co2,SUM(co1) counts FROM 
     (
      SELECT co1*-1 co1,co2,ROW_NUMBER() OVER (ORDER BY co1) rowid  FROM #a a
      WHERE NOT EXISTS (SELECT * FROM #a WHERE co1=a.co1-1 AND co2=a.co2)
      UNION ALL
      SELECT co1+1,co2,ROW_NUMBER() OVER (ORDER BY co1) rowid FROM #a a
      WHERE NOT EXISTS (SELECT * FROM #a WHERE co1=a.co1+1 AND co2=a.co2)
      ) p 
     GROUP BY rowid,co2 
    ) p1
    GROUP BY co2
    
    DROP TABLE #a
  • 相关阅读:
    Sqlite教程(1) SQLiteOpenHelper
    检查网络连接状态。
    GSON解译Json为DTO
    Okhttp教程 (1)
    HashMap的扩容算法
    回溯算法
    动态规划
    实现自旋锁
    Java堆
    垃圾回收算法总结
  • 原文地址:https://www.cnblogs.com/TivonStone/p/3604734.html
Copyright © 2011-2022 走看看