Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
SQL Select question
Message
 
 
To
25/11/2022 14:00:14
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
01685415
Message ID:
01685417
Views:
56
>>Hi,
>>
>>UPDATED:
>>I have three tables. I want the SQL Select to include some records from one table, some records from the second table, but only one value from the third table, the most recent date
>>
>>Here is an example (simplified):
>>Table1
>>
>>user_name, user_pk 
>>
>>So, the above ecords from the Table1 should be in the query
>>Table2
>>
>>user_pk, user_email
>>
>>The column USER_EMAIL from the second table
>>Table3
>>
>>user_name, data_in
>>
>>Date_in - the last time this user logged in.
>>So the resulting query should look something like this
>>
>>USER_1     USER_1_EMAIL       USER1_LASTDATE_IN
>>USER_2     USER_2_EMAIL       USER2_LASTDATE_IN
>>
>>Here is what I tried
>>
>>select Table1.USER_NAME as USER_1, MAX(USER_EMAIL) as USER_1_EMAIL, MAX(DATE_IN) AS USER1_LASTDATE_IN FROM Table1
>>LEFT JOIN Table3 on Table1.USER_NAME = Table3.USER_NAME GROUP BY Table1.USER_NAME 
>>LEFT JOIN Table2 ON Table2.USER_PK = Table1.USER_PK
>>
>>The above works.
>>But I wonder if MAX(USER_EMAIL) will give the correct results. I was hoping that I could select USER_EMAIL from Table2 without MAX.
>>
>>TIA.
>
>Max(Email) may give incorrect results.
>
>I would try something like this:
>
>Group by user, order by Last Login date, take 1 per group:
>
>(sample query):
>
>select name, value 
>from( select name, value, ROW_NUMBER() OVER(PARTITION BY name ORDER BY value desc) as rn
>from out_pumptable ) as a
>where rn = 1
>
First, thank you. Many of the terms in your SQL Select (e.g. PARTITION) I am not familiar with. I will Google them.
"The creative process is nothing but a series of crises." Isaac Bashevis Singer
"My experience is that as soon as people are old enough to know better, they don't know anything at all." Oscar Wilde
"If a nation values anything more than freedom, it will lose its freedom; and the irony of it is that if it is comfort or money that it values more, it will lose that too." W.Somerset Maugham
Previous
Reply
Map
View

Click here to load this message in the networking platform