Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

mysql query if else statement?

Tags:

sql

mysql

I have this sql query:

SELECT
S.SEARCH,
S.STATUS,
C.TITLE AS CategoryName,
E.SEARCH_ENGINES AS Engine,
S.RESULTS,
S.DATE,
S.TOTAL_RESULTS AS Total,
S.ID

FROM
PLD_SEARCHES AS S
Join PLD_CATEGORY AS C ON C.ID = S.CATEGORY_ID
Join PLD_SEARCH_ENGINES AS E ON S.SEARCH_ENGINES_ID = E.ID
ORDER BY S.DATE ASC

I want to identify if S.STATUS is either 1 or 0 and according to those values to return COMPLETE or PENDING in the query results

like image 621
user253530 Avatar asked Jan 19 '26 08:01

user253530


2 Answers

SELECT S.SEARCH, if(S.STATUS=1,'COMPLETE','PENDING') as STATUS, 
C.TITLE AS CategoryName, E.SEARCH_ENGINES AS Engine, S.RESULTS, 
S.DATE, S.TOTAL_RESULTS AS Total, S.ID
FROM PLD_SEARCHES AS S 
Join PLD_CATEGORY AS C ON C.ID = S.CATEGORY_ID 
Join PLD_SEARCH_ENGINES AS E ON S.SEARCH_ENGINES_ID = E.ID 
ORDER BY S.DATE ASC

The IF function is if(x=y, TRUE RESULT, FALSE RESULT)

if(S.STATUS=1,'COMPLETE','PENDING')
like image 98
Andy Avatar answered Jan 20 '26 22:01

Andy


You can do this by the following way too -

    SELECT
    S.SEARCH,
    CASE WHEN S.STATUS=1 THEN \'COMPLETE\' 
    ELSE \'PENDING\' END AS S.STATUS,
    C.TITLE AS CategoryName,
    E.SEARCH_ENGINES AS Engine,
    S.RESULTS,
    S.DATE,
    S.TOTAL_RESULTS AS Total,
    S.ID

    FROM
    PLD_SEARCHES AS S
    Join PLD_CATEGORY AS C ON C.ID = S.CATEGORY_ID
    Join PLD_SEARCH_ENGINES AS E ON S.SEARCH_ENGINES_ID = E.ID
    ORDER BY S.DATE ASC

Let me know if you have any problem.

like image 37
Anjuman Avatar answered Jan 20 '26 22:01

Anjuman