- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用以下代码从数据库中获取值:
但是当我编写这段代码时(测试问题出在哪里......)我注意到查询没有从数据库中提取不同的值:这是查询
select distinct(ca.id)as id, acc.name as accName,pIsu.name as pareentIsu, sIsu.name as subIsu ,
dv.domain_value as contractType,acc.id as accId,dvct.domain_value as contractstatus<br/>
from contracts_account ca left join business_unit pIsu on ca.parent_isu_fk = pIsu.id<br/>
left join business_unit sIsu on ca.sub_isu_fk = sIsu.id<br/>
left join business_unit acc on ca.account_fk = acc.id<br/>
left join contracts con on con.contracts_account_fk = ca.id<br/>
left join domain_values dv on dv.id = con.contract_type_fk<br/>
left join domain_values dvct on dvct.id = con.contract_status_fk<br/>
where ca.id is not null and con.contract_type_fk in ( 4466079 ) order by ca.id
这个查询根本没有返回给我 'Distinct Id'
我究竟做错了什么?我正在使用 postgres 8.2
最佳答案
您的查询被解释为:
select distinct (ca.id) as id, acc.name as accName, . . .
这是一个标准的distinct
语句。如果您只希望每个 ca.id
的一行包含第一行的值(基于 order by
),则使用 distinct on
:
select distinct on (ca.id) ca.id, acc.name as accName, . . .
关于sql - postgresql 明显不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21166383/
通常当我请求线程转储时,系统性能不佳的症状很容易解释;也就是说,通常我会看到许多线程显然正在等待一个已被获取但未被另一个释放的监视器。 在这种情况下,我有很多线程在等待监视器 (0x965ad100)
C:\Users\shagy\Desktop\3RD YEAR 2ND SEMESTER\SPM\Newfolder\SPM-SMS>npm start npm ERR! path C:\Users\
我是一名优秀的程序员,十分优秀!