내 쿼리는 다음과 같습니다 : 쿼리가이 연결 문자열을 테스트 테이블에 대해 테스트 할 수포스트 그레스 : 항상에서 작성 버킷 크로스 탭 쿼리에 남아
SELECT mthreport.*
FROM crosstab
('SELECT
to_char(ipstimestamp, ''mon DD HH24h'') As row_name,
varid::text || log.varid || ''_'' || ips.objectname::text As bucket,
COUNT(*)::integer As bucketvalue
FROM loggingdb_ips_boolean As log
INNER JOIN IpsObjects As ips
ON log.Varid=ips.ObjectId
WHERE ((log.varid = 37551)
OR (log.varid = 27087)
OR (log.varid = 50876)
OR (log.varid = 45096)
OR (log.varid = 54708)
OR (log.varid = 47475)
OR (log.varid = 54606)
OR (log.varid = 25528)
OR (log.varid = 54729))
GROUP BY to_char(ipstimestamp, ''yyyy MM DD HH24h''), row_name, objectid, bucket
ORDER BY to_char(ipstimestamp, ''yyyy MM DD HH24h''), row_name, objectid, bucket')
As mthreport(item_name text, varid_37551 integer,
varid_27087 integer ,
varid_50876 integer ,
varid_45096 integer ,
varid_54708 integer ,
varid_47475 integer ,
varid_54606 integer ,
varid_25528 integer ,
varid_54729 integer ,
varid_29469 integer)
: "호스트 = bellariastrasse.com 포트 = 5432 dbname = IpsLogging user = guest password = guest "
쿼리의 구문이 정확하고 정상적으로 실행됩니다. 내 문제는 COUNT (*) 값이 항상 맨 왼쪽 열을 채우는 것입니다. 그러나 대부분의 경우 왼쪽 열에는 0 또는 NULL이 있어야하며 두 번째 (또는 n 번째) 열만 채워야합니다. 내 뇌가 녹아서 무엇이 잘못되었는지를 알 수 없습니다!
나는 psql에 연결하고 pg_hba.conf 유효성 검증 실패를 얻으려고합니다. – kgrittn
죄송합니다 - 죄송합니다. 나는 손님 계정을 서둘러 설정했고 뭔가를 엉망으로 만들었을지도 모릅니다. 나는 오늘 거기에서 무엇이 잘못되었는지를 점검 할 것이다. – aag
이제 연결이 수정되어야합니다. 다시해볼 수 있니? – aag