from语句中的Sqlite和嵌套查询
我目前正在使用SQLite,我对这个查询感到非常震惊from语句中的Sqlite和嵌套查询,sql,sqlite,Sql,Sqlite,我目前正在使用SQLite,我对这个查询感到非常震惊 SELECT Cur.Name, SUM(Cur.Added+Cur.Removed) AS Lines, COUNT(DISTINCT(Cur.Author)) AS authCurrent, ( SELECT COUNT(DISTINCT(Author)) FROM Change WHERE Extencion = "java" AND Date >
SELECT Cur.Name, SUM(Cur.Added+Cur.Removed) AS Lines, COUNT(DISTINCT(Cur.Author)) AS authCurrent,
( SELECT COUNT(DISTINCT(Author))
FROM Change
WHERE Extencion = "java" AND
Date >= date('2012-04-08') AND
Date < date('2012-04-15')
) AS totCurrent
FROM
Change AS Cur,
( SELECT a.Name, COUNT(DISTICT(a.Author)) AS authLast
FROM Change AS a
WHERE a.Extencion = "java" AND
a.Date >= date('2012-04-08') AND
a.Date < date('2012-04-15')
GROUP BY a.Name ) AS Previous
WHERE
Previous.Name = Cur.Name
Cur.Extencion = "java" AND
Cur.Date >= date('2012-04-15') AND
Cur.Date < date('2012-04-22')
GROUP BY Cur.Name
似乎您在这一行中拼写了明显的错误:
COUNT(DISTICT(a.Author)) AS authLast -- change to DISTINCT
您是否也尝试过这样的查询:
SELECT Cur.Name,
SUM(Cur.Added+Cur.Removed) AS Lines,
COUNT(DISTINCT(Cur.Author)) AS authCurrent,
Previous.authLast AS totCurrent
FROM Change AS Cur
LEFT JOIN
(
SELECT a.Name, COUNT(DISTINCT(a.Author)) AS authLast
FROM Change AS a
WHERE a.Extencion = "java" AND
a.Date >= date('2012-04-08') AND
a.Date < date('2012-04-15')
GROUP BY a.Name
) AS Previous
ON Previous.Name = Cur.Name
WHERE
Cur.Extencion = "java" AND
Cur.Date >= date('2012-04-15') AND
Cur.Date < date('2012-04-22')
GROUP BY Cur.Name, Previous.authLast
似乎您在这一行中拼写了明显的错误:
COUNT(DISTICT(a.Author)) AS authLast -- change to DISTINCT
您是否也尝试过这样的查询:
SELECT Cur.Name,
SUM(Cur.Added+Cur.Removed) AS Lines,
COUNT(DISTINCT(Cur.Author)) AS authCurrent,
Previous.authLast AS totCurrent
FROM Change AS Cur
LEFT JOIN
(
SELECT a.Name, COUNT(DISTINCT(a.Author)) AS authLast
FROM Change AS a
WHERE a.Extencion = "java" AND
a.Date >= date('2012-04-08') AND
a.Date < date('2012-04-15')
GROUP BY a.Name
) AS Previous
ON Previous.Name = Cur.Name
WHERE
Cur.Extencion = "java" AND
Cur.Date >= date('2012-04-15') AND
Cur.Date < date('2012-04-22')
GROUP BY Cur.Name, Previous.authLast
是的,我错误地将其复制到html表单上,但是数据库上的查询是正确的spelt@user1384636您是否尝试运行我发布的查询版本?是的,我错误地将其复制到html表单中,但数据库上的查询是正确的spelt@user1384636您是否尝试运行我发布的查询版本?