我在下面的sql語句中出現錯誤。我訪問過的網站提倡將這兩個關鍵字一起使用的正確方法。我試圖從測試結果中獲得獨特特徵的數量。名字是測試的PK。當使用COUNT和DISTINCT時出現MySQLSyntaxErrorException
public int getTestCount(Database db, String name) throws SQLException {
int count = 0;
String sql = "SELECT COUNT (DISTINCT Trait) As Count FROM RESULTS WHERE name = ?";
PreparedStatement ps = db.con.prepareStatement(sql);
ps.setString(1, name);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
count = rs.getInt("Count");
}
return count;
}
錯誤:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'DISTINCT Trait) As Count FROM RESULTS WHERE name = 'test3'' at line 1
請註明錯誤你 – Roberto
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您有一個錯誤在你的SQL語法中;請檢查對應於您的MariaDB服務器版本的手冊,以找到在'DISTINCT Trait'附近使用的正確語法)作爲第1行中的名稱='test3'的Count FROM RESULTS WHERE – TraderJosh
請將此錯誤添加到問題的內容中,而不是評論。 – Julian