I want to SELECT 2 columns twice with different value

SELECT id FROM ads WHERE onoff='1' AND again='0'
SELECT id FROM ads WHERE onoff='2' AND again='1'
SELECT id FROM ads WHERE onoff='3' AND again='1'

is there a way to do this all in one sql ?

有帮助吗?

解决方案

SELECT id 
FROM ads 
WHERE (onoff = '1' AND again = '0')
   OR (onoff = '2' AND again = '1')
   OR (onoff = '3' AND again = '1')

其他提示

Better execution than using OR:

 SELECT id FROM ads WHERE onoff='1' AND again='0'
 UNION ALL
 SELECT id FROM ads WHERE onoff='2' AND again='1'
 UNION ALL
 SELECT id FROM ads WHERE onoff='3' AND again='1'

OR

SELECT ID FROM ADS WHERE onoff='1' AND again='0'
                      OR (onoff IN( '2','3') AND again = '1')
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top