希望有人可以帮我解释为什么我在这里遇到语法错误。我计算所有具有两个不同列值的行。
select count (*) as 'Distinct' from (
select distinct p.IDD, p.num
from PERF1 p
inner join MAST1 m
on (m.id_table = p.id_table and m.SOURCE_TABLE = p.SOURCE_TABLE)
where m.DATE > '2012-12-31' )
我在最后一个关键时刻收到错误,但在我的生活中不能说明我在这里做错了什么。 ...............................
一种巨大的"编辑"但我有点卡住了。我认为此查询将计算此表中不同行(对于两列)的数量。因此,例如,计数应该返回6,因为" P"和" T"重复。我以为我有这个:
select count (*) as 'Distinct' from (
select distinct p.IDD, p.co
from PERF1 p
inner join MAST1 m
on (m.id_table = p.id_table and m.SOURCE = p.SOURCE)
where m.DATE > '2012-12-31' ) TempTable
但是我得到的数字比我想的要高得多,所以我希望我的查询不正确。
+------+------+
| IDD | CO |
+------+------+
| 11 | P |
| 12 | P |
| 13 | T |
| 14 | T |
| 15 | R |
| 16 | S |
| 17 | U |
| 18 | K |
答案 0 :(得分:2)
您需要为子查询添加别名
select count (*) as 'Distinct' from (
select distinct p.IDD, p.num
from PERF1 p
inner join MAST1 m
on (m.id_table = p.id_table and m.SOURCE_TABLE = p.SOURCE_TABLE)
where m.DATE > '2012-12-31' ) TempTable