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 6196919
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T03:43:39+00:00 2026-05-24T03:43:39+00:00

Anyone can help me, I am a bit stuck. I have this query which

  • 0

Anyone can help me, I am a bit stuck.

I have this query which works like a charm

SELECT * , 
       matches - falsepositives AS hits
FROM (
    SELECT c. * , 
           IFNULL( p.total, 0 ) AS matches, 
            (
                SELECT COUNT( * ) 
                FROM ci_falsepositives n
                WHERE n.addressbook_id = c.reference
                AND n.sanction_key
                IN (
                    SELECT sanction_key
                    FROM ci_matched_sanctions
                )
            ) AS falsepositives
    FROM ci_address_book c
    LEFT JOIN (
        SELECT addressbook_id, 
               COUNT( match_id ) AS total
        FROM ci_matched_sanctions
        GROUP BY addressbook_id
    ) AS p 
        ON c.id = p.addressbook_id
) AS S
WHERE matches > 0
ORDER BY hits DESC

But I would like to change it to sort where HITS are more than 0, but it tells me it doesn’t know hits… Is it because it’s a calculation of 2 items?

  • 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-24T03:43:40+00:00Added an answer on May 24, 2026 at 3:43 am

    You can’t use an aliases column in a WHERE clause. You need to rewrite it:

    SELECT * , 
           matches - falsepositives AS hits
    FROM (
        SELECT c. * , 
               IFNULL( p.total, 0 ) AS matches, 
                (
                    SELECT COUNT( * ) 
                    FROM ci_falsepositives n
                    WHERE n.addressbook_id = c.reference
                    AND n.sanction_key
                    IN (
                        SELECT sanction_key
                        FROM ci_matched_sanctions
                    )
                ) AS falsepositives
        FROM ci_address_book c
        LEFT JOIN (
            SELECT addressbook_id, 
                   COUNT( match_id ) AS total
            FROM ci_matched_sanctions
            GROUP BY addressbook_id
        ) AS p 
            ON c.id = p.addressbook_id
    ) AS S
    WHERE matches - falsepositives > 0
    ORDER BY hits DESC
    

    Or use a subquery:

    SELECT * FROM (
        SELECT * , 
               matches - falsepositives AS hits
        FROM (
            SELECT c. * , 
                   IFNULL( p.total, 0 ) AS matches, 
                    (
                        SELECT COUNT( * ) 
                        FROM ci_falsepositives n
                        WHERE n.addressbook_id = c.reference
                        AND n.sanction_key
                        IN (
                            SELECT sanction_key
                            FROM ci_matched_sanctions
                        )
                    ) AS falsepositives
            FROM ci_address_book c
            LEFT JOIN (
                SELECT addressbook_id, 
                       COUNT( match_id ) AS total
                FROM ci_matched_sanctions
                GROUP BY addressbook_id
            ) AS p 
                ON c.id = p.addressbook_id
        ) AS S
    ) AS S2
    WHERE hits > 0
    ORDER BY hits DESC
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

can anyone help me with bit of refactoring advice. I have my App which
can anyone help me write a linq query, its a bit confusing... Basically i
I wonder if anyone can help - I have this error showing recently when
Really hope someone can help me as I'm a bit stuck :S I have
Am a bit stuck with a wordpress loop, am wondering if anyone can help.
Hey guys, I'm wondering if anyone can help me extend this bit of code-
Wondering if anyone can help me with this annoying but trivial (in terms of
wonder if anyone can help - I thought I had solved this but i
Having a bit of config trouble in Wordpress and wonder if anyone can help.
I was wondering if anyone can help me get started with creating a room

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.