diff --git a/src/main/java/de/thm/arsnova/dao/NovaView.java b/src/main/java/de/thm/arsnova/dao/NovaView.java
index 8079f45a8e0121bc9d89d3e41d4a03d479cfceb9..e4751bbfdbc4a1ec993d1dd01f7795d2d4ed2512 100644
--- a/src/main/java/de/thm/arsnova/dao/NovaView.java
+++ b/src/main/java/de/thm/arsnova/dao/NovaView.java
@@ -35,7 +35,11 @@ public class NovaView extends View {
 	}
 
 	public void setStartKeyArray(String key) {
-		this.startKey = encode("[\"" + key + "\"]");
+		if (isNumber(key)) {
+			this.startKey = encode("[" + key + "]");
+		} else {
+			this.startKey = encode("[\"" + key + "\"]");
+		}
 	}
 
 	public void setStartKeyArray(String... keys) {
@@ -48,7 +52,11 @@ public class NovaView extends View {
 	}
 
 	public void setEndKeyArray(String key) {
-		this.endKey = encode("[\"" + key + "\"]");
+		if (isNumber(key)) {
+			this.endKey = encode("[" + key + "]");
+		} else {
+			this.endKey = encode("[\"" + key + "\"]");
+		}
 	}
 
 	public void setEndKeyArray(String... keys) {
@@ -75,7 +83,9 @@ public class NovaView extends View {
 	private String toJsonArray(String[] strings) {
 		StringBuilder sb = new StringBuilder();
 		for (String str : strings) {
-			if (str.equals("{}")) {
+			if (isNumber(str)) {
+				sb.append(str + ",");
+			} else if (str.equals("{}")) {
 				sb.append(str + ",");
 			} else {
 				sb.append("\"" + str + "\"" + ",");
@@ -88,8 +98,15 @@ public class NovaView extends View {
 	}
 
 	private String quote(String string) {
+		if (isNumber(string)) {
+			return encode(string);
+		}
 		return encode("\"" + string + "\"");
 	}
+	
+	private boolean isNumber(String string) {
+		return string.matches("^[0-9]+$");
+	}
 
 	private String encode(String string) {
 		try {
diff --git a/src/test/java/de/thm/arsnova/dao/NovaViewTest.java b/src/test/java/de/thm/arsnova/dao/NovaViewTest.java
index 802d33a09efae83da75fec2b8e6beff0b5750e4a..e5c2530d346bfba24beffc06022aaf9de7e11390 100644
--- a/src/test/java/de/thm/arsnova/dao/NovaViewTest.java
+++ b/src/test/java/de/thm/arsnova/dao/NovaViewTest.java
@@ -90,6 +90,30 @@ public class NovaViewTest {
 		assertEncodedEquals("key", "[\"foo\",\"bar\",{}]", v.getQueryString());
 	}
 
+	@Test
+	public void arrayKeysShouldNotEnquoteNumbers() {
+		NovaView v = new NovaView(null);
+		v.setKey("foo", "bar", "2");
+		assertEncodedEquals("key", "[\"foo\",\"bar\",2]", v.getQueryString());
+	}
+
+	@Test
+	public void singleKeysShouldNotEnquoteNumbers() {
+		NovaView v = new NovaView(null);
+		v.setKey("2");
+		assertEncodedEquals("key", "2", v.getQueryString());
+	}
+
+	@Test
+	public void singleArrayKeysShouldNotEnquoteNumbers() {
+		NovaView v1 = new NovaView(null);
+		NovaView v2 = new NovaView(null);
+		v1.setStartKeyArray("2");
+		v2.setEndKeyArray("2");
+		assertEncodedEquals("startkey", "[2]", v1.getQueryString());
+		assertEncodedEquals("endkey", "[2]", v2.getQueryString());
+	}
+
 	private void assertEncodedEquals(String key, String expected, String actual) {
 		try {
 			assertEquals(key + "=" + URLEncoder.encode(expected, "UTF-8"), actual);