diff --git a/procedures/query/applyIDFilter.sql b/procedures/query/applyIDFilter.sql
index 183a0f512d2973188cb3fa0893846f83e1a19fe1..2b249471a0e70c673be1159eaffda7b0fa519ec2 100644
--- a/procedures/query/applyIDFilter.sql
+++ b/procedures/query/applyIDFilter.sql
@@ -55,6 +55,7 @@ IDFILTER_LABEL: BEGIN
 DECLARE data VARCHAR(20000) DEFAULT NULL;
 DECLARE aggVal VARCHAR(255) DEFAULT NULL;
 DECLARE direction CHAR(4) DEFAULT NULL;
+DECLARE entity_id_type VARCHAR(255) DEFAULT "eids.id ";
 
 #-- get aggVal if possible
 IF agg IS NOT NULL THEN
@@ -82,6 +83,10 @@ IF agg IS NOT NULL THEN
     SET aggVal = @sAggVal;
 END IF;
 
+IF o = ">" OR o = ">=" OR o = "<" or o = "<=" THEN
+    SET entity_id_type = "CAST(eids.id AS UNSIGNED INT) ";
+END IF;
+
 #-- generate stmt string
 IF targetSet IS NULL OR targetSet = sourceSet THEN
     SET data = CONCAT(
@@ -90,7 +95,8 @@ IF targetSet IS NULL OR targetSet = sourceSet THEN
         "` WHERE ",
         IF(o IS NULL OR EntityID IS NULL,
             "1=1",
-            CONCAT("NOT EXISTS (SELECT 1 FROM entity_ids AS eids WHERE eids.id ",
+            CONCAT("NOT EXISTS (SELECT 1 FROM entity_ids AS eids WHERE ",
+                entity_id_type,
                 o,
                 ' "',
                 EntityID,
@@ -111,7 +117,7 @@ ELSEIF versioned AND sourceSet = "entities" THEN
         '` (id, _iversion) SELECT e.id, _get_head_iversion(e.id) FROM `entities` AS e JOIN entity_ids AS eids ON (e.id = eids.internal_id) WHERE ',
         IF(o IS NULL OR EntityID IS NULL,
             "1=1",
-            CONCAT("eids.id ",
+            CONCAT(entity_id_type,
                 o,
                 ' "',
                 EntityID,
@@ -124,7 +130,7 @@ ELSEIF versioned AND sourceSet = "entities" THEN
         ' UNION SELECT e.id, _iversion FROM `archive_entities` AS e JOIN entity_ids AS eids ON (e.id = eids.internal_id) WHERE ',
         IF(o IS NULL OR EntityID IS NULL,
             "1=1",
-            CONCAT("eids.id ",
+            CONCAT(entity_id_type,
                 o,
                 ' "',
                 EntityID,
@@ -147,7 +153,7 @@ ELSE
         "` AS data JOIN entity_ids AS eids ON (eids.internal_id = data.id) WHERE ",
         IF(o IS NULL OR EntityID IS NULL,
             "1=1",
-            CONCAT("eids.id",
+            CONCAT(entity_id_type,
                 o,
                 ' "',
                 EntityID,