查找符合多个条件的同一表中的记录

时间:2015-11-16 17:53:46

标签: sqlite

我有一个sqlite表,其中包含从目录树中的数千个音频文件中提取的元数据。提取的目的是针对表运行一系列查询,以识别和纠正底层元数据中的异常。然后将更正的元数据从表中写回到底层文件。基础文件被分组到相册中,每个相册都在自己的目录中。与我的问题相关的表结构如下:

  • __ path:唯一标识符是路径和源文件名组合
  • __ dirpath:简单表示从中绘制表记录所代表的文件的目录。组成相册的记录将具有相同的__dirpath
  • __ discnumber:指定曲目来源的光盘编号。该字段可以为空白或包含字符串1,2,3 ...等。

我想识别所有记录(__dirpath相同且__discnumber等于1)。

1 个答案:

答案 0 :(得分:0)

SELECT DISTINCT __dirpath,
                discnumber
  FROM alib
 WHERE __dirpath IN (
           SELECT __dirpath
             FROM alib
            GROUP BY __dirpath
           HAVING count( * ) > 0
       )
AND 
       discnumber = 1
 ORDER BY __dirpath,
          discnumber;