----------------------------------------------------
-- data of the OP:
select * from (values(1,'A'),(2,'A'),(3,'A'),(3,'B'),(4,'B')) as f(id, type);
select *
from (
select id
, sum(case type when 'A' then 1 else 0 end) as a_count
, sum(case type when 'B' then 1 else 0 end) as b_count
from (values(1,'A'),(2,'A'),(3,'A'),(3,'B'),(4,'B')) as f1(id, type) -- your_table
group by 1
) as f2
where a_count > 0 and b_count > 0;
----------------------------------------------------
####
####
Can you color Ratty?
___
/ \\
______ \ //
/ \/ o \
________/ \
\_ \__\ \-----o
\____|\__|
####
--
-- Windows dev Install:
--
Installing postgres on windows as a unpriviledged user (avoiding the necessity of administrator rights):
-- download zip file;
http://www.enterprisedb.com/products-services-training/pgbindownload
"Binaries from installer version 9.2.2"
-- unzip the pgsql directory somewhere, and cd into it:
cd pgsql
-- run initdb:
bin\initdb -D 9.2\data
-- to start postgres:
"bin\pg_ctl" -D "9.2/data" -l logfile start
-- to stop: close all connections, and then run:
"bin\pg_ctl" -D "9.2/data" -l logfile stop
default port will be: 5432
(Install DBI + DBD::Pg to connect via perl )
I ran this on a rather old win2k, but it will probably also work on newer windows.
(wiggle slashes a bit and it will work on linux too (with the proper file download, of course))
perl -MDBI -Mstrict -e 'my$dbh=DBI->connect("dbi:Pg:port=5432;db=postgres;", undef, undef,{RaiseError=>1}); print $dbh, "\n"';
output:
DBI::db=HASH(0x1b5a808)
-> apparently the connection succeeded