我想在我的查詢中包含一個非常具體的CAST/CASE
,但我不確定如何執行此操作。這是我的SQL LINE:Php/Mysql:CAST/CASE如果row +'_remove'存在,那麼不要選擇
SELECT * FROM table WHERE (
type = 'aaa' OR
type = 'bbb' OR
type = 'ccc' OR
type = 'ddd')
AND (points NOT LIKE '-%')
ORDER BY id DESC LIMIT 10
什麼我試圖perfom是:
if : 'type'_remove EXISTS and 'type'->data == 'type'_remove->data
then : Don't select the 'type' row.
例子,我希望查詢選擇與否:
id type data points
----------------------------------
1 aaa 1 1 don't select : aaa_remove exists and data are the same
2 bbb 1 3 select : bbb_remove exists BUT data aren't the same
3 ddd 1 -1 don't select : points IS LIKE '-%'
4 aaa_remove 1 -1
5 ddd 1 -3 don't select : points IS LIKE '-%'
6 bbb_remove 2 -1
7 ccc 1 1 select : ccc_remove doesn't exists with the same data
如果points是一個數字數據類型,那麼你只需檢查'<0';如果它不是數字,爲什麼不是? – 2013-03-07 11:23:51
酷!是的點是一個BIGINT(20)所以是的,我打算這麼做:) Thinx – hawkidoki 2013-03-07 11:26:13