0

我是数据库新手,我正在为这样的表使用 SQLite Manager Firefox 插件:

rowid  |  col1  |  col2  |  col3  
  1    |   N    |   Y    |   N    
  2    |   N    |   N    |   N   
  3    |   N    |   Y    |   Y    
  4    |   N    |   Y    |   N

我想通过以下方式将其减少为具有较少列数(例如 2)的表:每一行应表示与计数相关联的 2 个选定列的值(N,Y)的一种可能组合. 此计数应表示原始表中的行数,其中另一列假定不同的值,但选定的 2 列具有给定的值组合。
需要明确的是,如果我选择第 2 列和第 3 列,我想获得:

col2  |  col3  | count  
 Y    |   N    |  2  
 N    |   N    |  1    
 Y    |   Y    |  1

而如果我选择第 1 列和第 2 列:

col1  |  col2  | count  
 N    |   Y    |  3  
 N    |   N    |  1 

我尝试使用 COUNT 和 GROUP BY 等命令的组合,但没有达到我的目标。例如,我尝试使用:

SELECT *, COUNT (*) AS count FROM table_test   
GROUP BY col2, col3

但它似乎只适用于col2,给我 #timescol2=Y和 #times col2=N,但不能与col3...
您有什么建议吗?

4

0 回答 0