Given a list of filters, this function builds a logical condition to query database using intervals. The output is used in build_condition().

existing_intervals(filters, interval, operator, partialmatch)

Arguments

filters

List of filters to be used. The names should correspond to the attribute and the values correspond to the condition for selection.

interval

the filters with values considered as interval.

operator

A string indicading if all the filters (AND) or some of them (OR) should be met.

partialmatch

name of the condition(s) with a string pattern for full or partial match in the query.

Value

A character(1) with the sql logical condition to query the dataset.

Author

Carmina Barberena Jonás, Jesús Emiliano Sotelo Fonseca, José Alquicira Hernández, Joselyn Chávez

Examples


## Build the SQL query for existing interval partial matches for ara
existing_intervals(
    filters = list(
        name = "ara",
        strand = "for",
        posright = c("2000", "40000")
    ),
    interval = c("posright"),
    operator = "AND",
    partialmatch = c("name", "strand")
)
#> [1] "(name like  '%ara%') AND (strand like  '%for%')AND(posright >= 2000 AND posright <= 40000)"