Hello I'm learning SQL recently and I'm struggled with this pb for hours:
for each different value of column A, I want to get first result of column B
did someone know how to do this?
Here's an example
| person | account | profile_pic |
|---|---|---|
| snoopy | snoppy_main | path/snoopy/000001 |
| snoopy | snoppy_twitter | path/snoopy/000003 |
| snoopy | snoppy_twitter | path/snoopy/000004 |
| snoopy | snoppy_twitter | path/snoopy/000005 |
| mickey | mickey_insta | path/mickey/001007 |
| mickey | mickey_insta | path/mickey/001008 |
| teddy | teddy_global | path/teddy/002009 |
and here's the result I want to have
| person | account | profile_pic |
|---|---|---|
| snoopy | snoppy_main | path/snoopy/000001 |
| snoopy | snoppy_twitter | path/snoopy/000003 |
| mickey | mickey_insta | path/mickey/001007 |
| teddy | teddy_global | path/teddy/002009 |
CodePudding user response:
You may use the MIN function to achieve your desired results. Eg
SELECT
person,
account,
MIN(profile_pic) as profile_pic
FROM
your_table
GROUP BY
person,
account
Let me know if this works for you.
