diff --git a/db.go b/db.go
index 4e477d992fdaf72aff89c5dd79deedf65cfa6d04..d28d94e2028e24099b40b275c18f23a618bc7815 100644
--- a/db.go
+++ b/db.go
@@ -100,8 +100,8 @@ type Func struct {
 // 	}
 type And []interface{}
 
-func (a And) And(exp interface{}) And {
-	return append(a, exp)
+func (a And) And(exp ...interface{}) And {
+	return append(a, exp...)
 }
 
 // Or is an array of interfaced that is used to join two or more expressions
@@ -117,8 +117,8 @@ func (a And) And(exp interface{}) And {
 // 	}
 type Or []interface{}
 
-func (o Or) Or(exp interface{}) Or {
-	return append(o, exp)
+func (o Or) Or(exp ...interface{}) Or {
+	return append(o, exp...)
 }
 
 // Raw holds chunks of data to be passed to the database without any filtering.