Re: hiding column values for specific rows

From: Bricklen Anderson <banderson(at)presinet(dot)com>
To: Luca Ferrari <fluca1978(at)infinito(dot)it>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: hiding column values for specific rows
Date: 2006-11-14 18:43:02
Message-ID: 455A0E36.1050809@presinet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Luca Ferrari wrote:
> Hi,
> I don't know if this's possible but I'd like to hide column values for
> specific rows within a query. Imagine I've got a table with columns username
> and password: users(username,password). Now I'd like the user registered in
> the table to see her password, to see who is registered but not to see the
> other people passwords. For example, if the table contains:
> username | password
> --------------+-------------
> luca | myPaswd
> roberto | otherPaswd
> gianna | thirdPaswd
>
> I'd like to do a query like: "SELECT * FROM users where username=luca"
> obtaining something like:
> username | password
> --------------+-------------
> luca | myPaswd
> roberto | xxxxx
> gianna | XXXXX
>
> Is it possible to specify in the above query that all password columns that do
> not belong to selected row (username=luca) must be hidden? Anyone has an idea
> about how to implement this on the database side?
>
> Thanks,
> Luca
>
You could try:
select username,case when username='luca' then password else 'XXXXXX'
end as password from users;

Note that the the username 'luca' corresponds to the user querying the
table.

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Bruce Momjian 2006-11-14 18:43:58 Re: Case Preservation disregarding case sensitivity?
Previous Message T E Schmitz 2006-11-14 15:02:58 Re: max (timestamp,timestamp)