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

  • Home
  • SEARCH
  • 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 180105

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T14:31:36+00:00 2026-05-11T14:31:36+00:00

How can I reuse a computed column in SQL in MySQL? Say: my query

  • 0

How can I reuse a computed column in SQL in MySQL? Say: my query is something like: –

SELECT      CONVERT_TZ(         if(timestamp_start > last_update, timestamp_start, last_update),          'GMT',          user.timezone     ) as time_usr_tz from      shecdule     inner join user on shecdule.user_id = user.user_id where      CONVERT_TZ(         if(timestamp_start > last_update, timestamp_start, last_update),          'GMT',          user.timezone     )     < CURRENT_TIMESTAMP(); 

If you see the query the ‘CONVERT_TZ…..’ part is repeated.

This is only a sample query. Actually, I have to use that computed column several times. So if I make change in one place, I have to change in many places. And the size of the query becomes scary, too.

Is there any way to avoid such duplication?

UPDATE I already have sub-query in my original query, so sub-query is not a preferable option. Is it possible in any other way?

  • 0 0 Answers
  • 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. 2026-05-11T14:31:37+00:00Added an answer on May 11, 2026 at 2:31 pm
    SELECT  ctz FROM    (         SELECT  shecdule.*,                 CONVERT_TZ(                 if(timestamp_start > last_update, timestamp_start, last_update),                  'GMT',                  user.timezone                 ) AS ctz         FROM    shecdule         INNER JOIN                 user         ON      user.user_id = s.user_id         ) s WHERE  ctz < CURRENT_TIMESTAMP() 

    Note that this query doesn’t use the indexes on timestamp_start and last_update efficiently.

    See the performance details in the article in my blog:

    • Selecting timestamps for a time zone

    In two words, you better use this:

    SELECT  ctz FROM    (         SELECT  shecdule.*,                 CONVERT_TZ(                 if(timestamp_start > last_update, timestamp_start, last_update),                  'GMT',                  user.timezone                 ) AS ctz         FROM    shecdule         INNER JOIN                 user         ON      user.user_id = s.user_id         WHERE   timestamp_start < CURRENT_TIMESTAMP() + INTERVAL 14 HOUR                 OR last_update < CURRENT_TIMESTAMP() + INTERVAL 14 HOUR         ) s WHERE  ctz < CURRENT_TIMESTAMP() 

    This inner query will perform coarse filtering on timestamp_start and last_update using indexes (no zone conversion can offset the time more than +14:00 hours from UTC).

    The outer subquery will then fine filter the results based on user’s time zone.

    If you don’t like subqueries, you may also use:

    SELECT  shecdule.*,         CONVERT_TZ(         if(timestamp_start > last_update, timestamp_start, last_update),          'GMT',          user.timezone         ) AS ctz FROM    shecdule INNER JOIN        user ON      user.user_id = s.user_id /*          WHERE   timestamp_start < CURRENT_TIMESTAMP() + INTERVAL 14 HOUR                 OR last_update < CURRENT_TIMESTAMP() + INTERVAL 14 HOUR */ HAVING  ctz < CURRENT_TIMESTAMP() 
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 149k
  • Answers 150k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Use the LABEL SQL command. If you are using the… May 12, 2026 at 9:40 am
  • Editorial Team
    Editorial Team added an answer EF v1 has a problem returning scalar values from a… May 12, 2026 at 9:40 am
  • Editorial Team
    Editorial Team added an answer you will need to create and itemrenderer and use the… May 12, 2026 at 9:40 am

Related Questions

How would you rate the efficiency of a certain design? What are your variables?
I have a system tray icon that receives incoming phone calls. When a call
I am trying to create my first site in Django and as I'm looking
I've written an application and I'd like to add a registration key/serial number to

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

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.