More on unique vs distinct
I guess I should have been a bit more specific. Here is an example of
the type of query I'm finding in the Oracle app and the results of my
attempt to find a PostgreSQL equivalent.
select count(unique 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: syntax error at or near "'source_id'" at character 23
select count(distinct 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: could not identify an equality operator for type "unknown"
Thanks for all the help,
-=bill
Not 100% sure....
select count(*) from (select distinct source_id from obis_sources) t
Wm.A.Stafford wrote:
Show quoted text
I guess I should have been a bit more specific. Here is an example of
the type of query I'm finding in the Oracle app and the results of my
attempt to find a PostgreSQL equivalent.select count(unique 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: syntax error at or near "'source_id'" at character 23select count(distinct 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: could not identify an equality operator for type "unknown"Thanks for all the help,
-=bill---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly
On Nov 20, 2006, at 12:27 PM, Wm.A.Stafford wrote:
I guess I should have been a bit more specific. Here is an example
of the type of query I'm finding in the Oracle app and the results
of my attempt to find a PostgreSQL equivalent.select count(unique 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: syntax error at or near "'source_id'" at character 23select count(distinct 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: could not identify an equality operator for type "unknown"
The single quotes are confusing things here, it treats 'source_id' as
a literal string instead of a column name. Try it without the quotes:
select count(distinct source_id) from obis_sources;
hth,
-Casey
On Mon, 2006-11-20 at 19:46 -0300, Rodrigo Gonzalez wrote:
Not 100% sure....
select count(*) from (select distinct source_id from obis_sources) t
SELECT count(source_id) FROM obis_sources GROUP BY source_id ?
Joshua D. Drake
Wm.A.Stafford wrote:
I guess I should have been a bit more specific. Here is an example of
the type of query I'm finding in the Oracle app and the results of my
attempt to find a PostgreSQL equivalent.select count(unique 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: syntax error at or near "'source_id'" at character 23select count(distinct 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: could not identify an equality operator for type "unknown"Thanks for all the help,
-=bill---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?
--
=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive PostgreSQL solutions since 1997
http://www.commandprompt.com/
Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
On Nov 21, 2006, at 5:27 , Wm.A.Stafford wrote:
I guess I should have been a bit more specific. Here is an example
of the type of query I'm finding in the Oracle app and the results
of my attempt to find a PostgreSQL equivalent.select count(unique 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: syntax error at or near "'source_id'" at character 23select count(distinct 'source_id') from obis_sources;
pgAdmin III query responds:
ERROR: could not identify an equality operator for type "unknown"
I think the single quotes are the cause of your problem. Single-
quotes indicate a string literal. In the first case, you can see that
the syntax error is putting double quotes around 'source_id',
including the single quotes, because it's expecting an identifier
(not a string literal). In the second case it's seeing a string
literal but it's not sure what type to implicitly cast it to.
In either case, I think what you're looking for is:
select count(distinct source_id) from obis_sources;
Michael Glaesemann
grzm seespotcode net