Switch to unified view

a b/inst/queries/sparseDataMatchFieldSlow.xq
1
; sparseDataMatchFieldSlow
2
(fn [field dataset names]
3
    (let [getfield (fn [field]
4
                     (:id (car (query {:select [:field.id]
5
                                       :from [:dataset]
6
                                       :join [:field [:= :dataset.id :field.dataset_id]]
7
                                       :where [:and [:= :field.name field] [:= :dataset.name dataset]]}))))
8
          genes (getfield field)]
9
      (map :gene (query {:select [:%distinct.gene]
10
                         :from [:field_gene]
11
                         :where [:and
12
                                 [:= :field_gene.field_id genes]
13
                                 [:in :%lower.gene names]]}))))
14