Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7034759
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 28, 20262026-05-28T01:13:28+00:00 2026-05-28T01:13:28+00:00

I have two tables. One is a click-log, that records the exact time we

  • 0

I have two tables. One is a click-log, that records the exact time we received a click. The 2nd is a dollars / day table that records the amount we earned each day with a particular site.

I need to calculate the daily CPC for each site. The query bellow is working, but takes almost a minute.

Here’s the result of explain:

id  select_type     table           type    possible_keys       key     key_len     ref     rows       Extra
1   SIMPLE          click_log       ALL     url_id,click_time   NULL    NULL        NULL    1404209    Using where; Using temporary; Using filesort
1   SIMPLE          daily_dollars   ref     url_id,date         date    3           func    6          Using where

And the query:

SELECT date( click_log.click_time ) AS DAY,
       click_log.shorturl AS site,
       daily_dollars.money AS earned,
       count( click_log.click_id ) AS clicks,
       daily_dollars.money / count( click_log.click_id ) AS CPC
FROM `yourls_log` AS click_log, yourls_url_money AS daily_dollars
WHERE click_log.click_time >= "2011-07-01"
    AND click_log.url_id = daily_dollars.url_id
    AND date( click_log.click_time ) = daily_dollars.date
GROUP BY DAY , click_log.shorturl

Anything I can do to speed this up?

Table Structure:

yourls_log
----------
click_id
click_time
shorturl
url_id

yourls_url_money
----------------
id
url_id
date
money
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-28T01:13:29+00:00Added an answer on May 28, 2026 at 1:13 am

    Not sure why, but this is much faster (1.5 seconds):

    SELECT m.date, c.shorturl, m.money, c.clicks, m.money / c.clicks AS CPC
    FROM yourls_url_money AS m
    LEFT JOIN (
    
    SELECT date( click_time ) AS
    DAY , url_id, shorturl, count( click_id ) AS clicks
    FROM yourls_log
    WHERE click_time >= "2011-07-01"
    GROUP BY DAY , url_id, shorturl
    ) AS c ON m.url_id = c.url_id
    AND m.date = c.day
    WHERE date >= "2011-07-01"
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two tables : one table it matchs and the other is teams.
I have two tables, one is a table of forum threads. It has a
I have two tables. I want to show one table when the first radio
I have two tables, one user_info : table user_info { user_id ; fname; laname;
I have two tables in this project of mine. One table is for the
I have two tables and I want to have change event on one table.
I have two tables, one table is the items container, which holds all data
I have two tables, one for routes and one for airports. Routes contains just
I have two tables, one called cart and one called items. Now I want
I have two tables. One (Widgets) has a list of widgets (ID, widget_name, color,

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.