agora inbox for pgsql-sql@postgresql.org
help / color / mirror / Atom feedFrom: jj08 <jj08@drivehq.com>
To: v_kalees@yahoo.com
To: vyegorov@gmail.com
Cc: pgsql-sql@lists.postgresql.org
Subject: RE:Re: RE:Re: RE:Re: A complex SQL query
Date: Sun, 08 Sep 2019 09:12:59 -0700
Message-ID: <2261999271000000009736706@www> (raw)
v_kalees:
Thank you for your suggestion.
I tried your code at http://www.sqlfiddle.com/#!17/4e386/4/1
but couldn't make it work. (I wanted to see two rows, but your query returns only one row.)
My original question was to find people working for company "Micro", so I took liberty to add "where employer='Micro'" condition to your solution.
May be I put the where clause at a wrong place?
Anyway, for me it is getting more complex :)
Victor's solution is producing 2 rows as I wanted, so for now a crisis has been averted!
From: v_kalees@yahoo.com
--To: vyegorov@gmail.com,jj08@drivehq.com
--CC: pgsql-sql@lists.postgresql.org
--Date: 9/7/2019 8:20:57 PM --Subject: Re: RE:Re: RE:Re: A complex SQL query This is much cleaner way
select * from (
select usr_id,
employer,
start_date,
end_date,
rank() OVER (PARTITION BY employer ORDER BY start_date DESC) AS rnk from <tablename>
) t where t.rnk=1; Thanks On Sunday, September 8, 2019, 7:40:05 AM GMT+5:30, jj08 <jj08@drivehq.com> wrote:
Hello Vicor!
It works!!!
Thank you very much.
--From: vyegorov@gmail.com
--To: jj08@drivehq.com
--CC: pgsql-sql@lists.postgresql.org
--Date: 9/7/2019 2:33:40 PM --Subject: Re: RE:Re: A complex SQL query сб, 7 сент. 2019 г. в 21:23, jj08 <<a rel="nofollow" ymailto="mailto:jj08@drivehq.com" target="_blank" href="mailto:jj08@drivehq.com">jj08@drivehq.com>:
To Janis or other members of the forum:
My sample table contains other columns as well.
One of the columns that I did not include in my first message is "position".
The last table has been modified as follows:
+--------+----------+------------+------------------------+
| usr_id | employer | position + start_date | end_date |
+--------+----------+------------+------------------------+
| A | Goo | CTO | | 201904 |
| A | Micro | Mgr | 201704 | 201903 |
| B | Micro | Engg_Mgr | 201706 | - |
| B | Goo | Researcher | 201012 | 201705 |
| B | Micro | Postdoc | 201001 | 201011 | +--------+----------+------------+------------------------+
SELECT DISTINCT ON (usr_id)
*
FROM employment
WHERE employer='Micro' ORDER BY usr_id, start_date DESC;
-- Victor Yegorov
-------------------------
Online Storage & Sharing, Online Backup, FTP / Email Server Hosting and More.
Drive Headquarters. Top quality services designed for business! Sign up free at: www.DriveHQ.com.
-------------------------
Online Storage & Sharing, Online Backup, FTP / Email Server Hosting and More.
Drive Headquarters. Top quality services designed for business! Sign up free at: www.DriveHQ.com
. =
view thread (8+ messages)
Message-ID: <2261999271000000009736706@www>
Permalink: ../2261999271000000009736706@www/
Also on: postgresql.org/message-id/2261999271000000009736706@www
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: jj08@drivehq.com, v_kalees@yahoo.com, vyegorov@gmail.com, pgsql-sql@lists.postgresql.org
Subject: RE:Re: RE:Re: RE:Re: A complex SQL query
In-Reply-To: <2261999271000000009736706@www>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox