trio_asprintf(&out, "%s OR (e.time_stamp >= %s AND e.time_stamp <= %s)", conds, aux, dbt);
                                        free(aux);
                                }
+                               else if (ec[m][n].op == EDG_WLL_QUERY_OP_EQUAL) {
+                                       trio_asprintf(&out, "%s OR (e.time_stamp = %s AND e.usec = %d)",
+                                                       conds, dbt, ec[m][n].value.t.tv_usec);
+                               }
                                else
                                        trio_asprintf(&out, "%s OR e.time_stamp %s %s", conds, opToString(ec[m][n].op), dbt);
                                free(conds);
                                trio_asprintf(&conds, "(e.time_stamp >= %s AND e.time_stamp <= %s)", aux, dbt);
                                free(aux);
                        }
+                       else if (ec[m][n].op == EDG_WLL_QUERY_OP_EQUAL) {
+                               trio_asprintf(&out, "(e.time_stamp = %s AND e.usec = %d)",
+                                               dbt, ec[m][n].value.t.tv_usec);
+                       }
                        else
                                trio_asprintf(&conds, "e.time_stamp %s %s", opToString(ec[m][n].op), dbt);
                        break;