MySQL Forums :: Performance :: Query optimize on large database


Advanced Search

Re: Query optimize on large database
Posted by: Pavel Volkov ()
Date: July 18, 2016 04:28AM

Yeah, there's a typo in my 1st post query. (group by d1.owner_id must be d2.owner_id)

Ofc, the correct one is:

SELECT d2.owner_id, COUNT(*) AS kolvo
FROM data d1
JOIN data d2 USING(Artist,Title)
WHERE d1.owner_id = @user_id
GROUP BY d2.owner_id

Again - structure is [owner_id, Artist, Title]. More than 100 000 users there.

Requirement is to get number of songs matching the specified user's songlist and group it by other user's with indicating the number of matches.

For example we got @user_id = 123 at the input, so we must get list like

[owner_id , matches]

2: 5
52: 4
74: 2
433: 10
... and so on doing fullscan

Sorry for maybe not so PLAIN english :)

Options: ReplyQuote


Subject Views Written By Posted
Query optimize on large database 500 Pavel Volkov 07/13/2016 01:40AM
Re: Query optimize on large database 294 Rick James 07/15/2016 05:12PM
Re: Query optimize on large database 298 Pavel Volkov 07/16/2016 04:15AM
Re: Query optimize on large database 283 Peter Brawley 07/16/2016 12:09PM
Re: Query optimize on large database 276 Pavel Volkov 07/16/2016 12:36PM
Re: Query optimize on large database 271 Rick James 07/16/2016 02:46PM
Re: Query optimize on large database 279 Peter Brawley 07/17/2016 11:22AM
Re: Query optimize on large database 266 Pavel Volkov 07/18/2016 04:28AM
Re: Query optimize on large database 257 Peter Brawley 07/18/2016 08:40AM
Re: Query optimize on large database 269 james wang 07/20/2016 04:46AM
Re: Query optimize on large database 255 Pavel Volkov 07/20/2016 08:06AM
Re: Query optimize on large database 274 Rick James 07/20/2016 09:29AM
Re: Query optimize on large database 264 james wang 07/21/2016 04:35AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.