Mr.Happy
Mr.Happy

Reputation: 2647

mysql set value to empty if specific field is not empty

I have created this sql select query:

SELECT subscription_new_projects.banners, subscription_new_projects.banner_link
FROM subscription_new_projects
WHERE be_famous_id =32
AND now( ) < end_date
ORDER BY subscription_new_projects_id DESC

and getting this sql result:

enter image description here

Now I want to set banners field empty, If banner_link is not empty.

I want this result:

enter image description here

My SQL Fiddle: Example

Any Idea how to do this?

Thanks.

Upvotes: 3

Views: 59

Answers (2)

Ullas
Ullas

Reputation: 11556

Use CASEstatement.

Query

SELECT 
CASE WHEN subscription_new_projects.banner_link != ''
THEN NULL 
ELSE subscription_new_projects.banners
END AS banners,
subscription_new_projects.banner_link
FROM subscription_new_projects
WHERE be_famous_id =32
AND now( ) < end_date
ORDER BY subscription_new_projects_id DESC;

Fiddle demo

Upvotes: 0

Abhik Chakraborty
Abhik Chakraborty

Reputation: 44844

You can use case-when

SELECT 
case 
when 
  subscription_new_projects.banner_link <> '' then '' 
  else subscription_new_projects.banners 
end as banners,  
subscription_new_projects.banner_link
FROM subscription_new_projects
WHERE be_famous_id =32
AND now( ) < end_date
ORDER BY subscription_new_projects_id DESC

Upvotes: 2

Related Questions