2016-11-26 60 views
-1

我想要統計行數where和enum =除兩個值之外的任何值,而是=其他值。Mysqli select * from表where enum = x,y或z

在我的數據庫我有五個不同值的枚舉,讓我們稱之爲ABCDE,我只wnat計數行,其中枚舉= CDE但它= AB。做這種事情的最佳方式是什麼?我可以做類似SELECT * FROM users WHERE enum >= C, D, E的東西,還是我必須通過SELECT * FROM users WHERE enum = C, enum = D, enum = E以艱難的方式完成?

+0

你標記爲mysqli的,沒有代碼或API支持的問題。 –

+0

'SELECT * FROM users WHERE enum = C,enum = D,enum = E' - 這是一個無效的語句。 SELECT使用'AND | OR'作爲分隔符。您的其他SELECT也無效。我建議你閱讀所有的手冊http://dev.mysql.com/doc/refman/5.7/en/select.html --- http://dev.mysql.com/doc/refman/5.7/en/ where-optimizations.html --- http://dev.mysql.com/doc/refman/5.7/en/enum.html –

+0

@ Fred-ii-你我不記得正確的做法,但重點是如果有更簡單的方法 –

回答

-2

我認爲這是

SELECT * FROM users WHERE 'enum' IN ('C', 'D', 'E') 
+0

1.)enum不是有效的列名:http://dev.mysql.com/doc/refman/5.7/en/enum.html - 你必須轉義這個列名。 2.)雙引號無效,你應該使用單引號。 3.)第二個解決方案不工作C,D和E不是列名。 –

相關問題