Мне нужно найти все уникальные значения из приведенного ниже и передать их в SQL-запрос.Ниже приведен пример того, что я пытаюсь сделать, я на самом деле беру данные из двух файлов, сопоставляя их и получая уникальные значения.
Моя проблема заключается в том, что я хочу поместить значения в sql IN()
, но у меня возникли проблемы с разделением значений через запятую
Я пытался использовать замену, но мне кажется, что это не работает
(def snapshot
#{{:id "1234" :mtm "101" :pv"200"}
{:id"1235" :mtm "101" :pv"200"}
{:id"10234" :mtm "101" :pv"200"}
{:id"12034" :mtm "101" :pv"200"}
{:id"127" :mtm "101" :pv"200"}}
)
(def snapshot1
#{{:id"1238" :mtm "104" :pv"200"}
{:id"234" :mtm "101" :pv"200"}
{:id"124" :mtm "101" :pv"200"}
{:id"123" :mtm "101" :pv"200"}
{:id"134" :mtm "101" :pv"200"}}
)
(def SNAPSHOT-IDsT (set (map :id snapshot)))
(def SNAPSHOT-IDsT1 (set (map :id snapshot1)))
(def id-in-one-file-only (difference SNAPSHOT-IDsT1 SNAPSHOT-IDsT))
(println id-in-one-file-only)
это дает мне {1238 123 134 234 124}
Как я могу отредактировать эти результаты, чтобы дать мне {1238, 123, 134, 234, 124}
Так, чтобы я мог затем передать его в строку
(str "Select * from table where id in ("id-in-one-file-only")")
Любая помощь или указатели с этим будет очень признателен