diff --git a/src/lib.rs b/src/lib.rs
index 9c9cfeba655b701b7d17d493edf586f89dc7f21b..bdb837e8f11ac4eabad53917fefd059bd46acdd2 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -215,6 +215,8 @@ pub enum Method {
 // them directly
 mod seal {
     pub trait Sealed {}
+    impl<T: Sealed> Sealed for &T {}
+    impl<T: Sealed> Sealed for &mut T {}
 }
 
 /// Signifies that a query has been validated through some of the validation methods
diff --git a/src/query/ops/mod.rs b/src/query/ops/mod.rs
index d53fd75eefd2c3768a6fc17b1563af09ba03296b..254213f88471825a488d909cc26e8e6b53c854c2 100644
--- a/src/query/ops/mod.rs
+++ b/src/query/ops/mod.rs
@@ -31,3 +31,6 @@ pub use logic::Logical;
 
 /// Marker trait for signifying that a type can be used with the operators
 pub trait Operable: Display + Sealed {}
+
+impl<T: Operable> Operable for &T {}
+impl<T: Operable> Operable for &mut T {}