[ngrams] some query to fix

parent b8d826ac
...@@ -22,6 +22,7 @@ module Gargantext.Database.Query.Facet ...@@ -22,6 +22,7 @@ module Gargantext.Database.Query.Facet
, viewDocuments' , viewDocuments'
, runCountDocuments , runCountDocuments
, filterWith , filterWith
, runTestAgg
, Category , Category
, Score , Score
...@@ -59,6 +60,7 @@ import Gargantext.Database.Schema.Node ...@@ -59,6 +60,7 @@ import Gargantext.Database.Schema.Node
import Gargantext.Database.Schema.NodeContext import Gargantext.Database.Schema.NodeContext
import Gargantext.Prelude (printDebug) import Gargantext.Prelude (printDebug)
import Gargantext.Database.Query.FacetTest (runTestAgg)
------------------------------------------------------------------------ ------------------------------------------------------------------------
...@@ -198,19 +200,34 @@ viewDocumentsAgg :: CorpusId ...@@ -198,19 +200,34 @@ viewDocumentsAgg :: CorpusId
-> Select FacetDocAggPart -> Select FacetDocAggPart
viewDocumentsAgg cId t ntId mQuery mYear = proc () -> do viewDocumentsAgg cId t ntId mQuery mYear = proc () -> do
(c, nc) <- viewDocumentsQuery cId t ntId mQuery mYear -< () (c, nc) <- viewDocumentsQuery cId t ntId mQuery mYear -< ()
cnng <- optionalRestrict queryContextNodeNgramsTable -< agg <- OAgg.aggregate sumInt4 (aggQ (nc ^. nc_node_id) (c ^. cs_id)) -< ()
\cnng' -> (cnng' ^. cnng_node_id) .== (nc ^. nc_node_id) .&& -- agg <- OAgg.aggregate sumInt4
(cnng' ^. cnng_context_id) .== (c ^. cs_id) -- (proc (c', nc') -> do
-- cnng <- queryContextNodeNgramsTable -< ()
-- restrict -< (cnng ^. cnng_node_id) .== (nc' ^. nc_node_id)
-- restrict -< (cnng ^. cnng_context_id) .== (c' ^. cs_id)
-- returnA -< (cnng ^. cnng_doc_count)) -< (c, nc)
-- cnng <- optionalRestrict queryContextNodeNgramsTable -<
-- \cnng' -> (cnng' ^. cnng_node_id) .== (nc ^. nc_node_id) .&&
-- (cnng' ^. cnng_context_id) .== (c ^. cs_id)
returnA -< FacetDoc { facetDoc_id = _cs_id c returnA -< FacetDoc { facetDoc_id = _cs_id c
, facetDoc_created = _cs_date c , facetDoc_created = _cs_date c
, facetDoc_title = _cs_name c , facetDoc_title = _cs_name c
, facetDoc_hyperdata = _cs_hyperdata c , facetDoc_hyperdata = _cs_hyperdata c
, facetDoc_category = nc ^. nc_category , facetDoc_category = nc ^. nc_category
, facetDoc_ngramCount = fromMaybeFields 0 $ _cnng_doc_count <$> cnng -- toNullable $ nc^.nc_score , facetDoc_ngramCount = fromIntegral agg
-- , facetDoc_ngramCount = fromMaybeFields 0 $ _cnng_doc_count <$> cnng -- toNullable $ nc^.
nc_score
-- , facetDoc_ngramCount = toNullable $ toFields cnt -- , facetDoc_ngramCount = toNullable $ toFields cnt
, facetDoc_score = nc ^. nc_score , facetDoc_score = nc ^. nc_score
} }
aggQ ncId cId = proc () -> do
cnng <- queryContextNodeNgramsTable -< ()
restrict -< (cnng ^. cnng_node_id) .== ncId
restrict -< (cnng ^. cnng_context_id) .== cId
returnA -< (cnng ^. cnng_doc_count)
-- TODO Join with context_node_ngrams at context_id/node_id and sum by -- TODO Join with context_node_ngrams at context_id/node_id and sum by
-- doc_count. -- doc_count.
viewDocumentsQuery :: CorpusId viewDocumentsQuery :: CorpusId
......
...@@ -18,7 +18,7 @@ Portability : POSIX ...@@ -18,7 +18,7 @@ Portability : POSIX
module Gargantext.Database.Schema.ContextNodeNgrams module Gargantext.Database.Schema.ContextNodeNgrams
where where
import Prelude import Protolude
import Gargantext.Core.Types (TermsCount) import Gargantext.Core.Types (TermsCount)
import Gargantext.Database.Schema.Prelude import Gargantext.Database.Schema.Prelude
import Gargantext.Database.Schema.Ngrams (NgramsTypeId, NgramsId) import Gargantext.Database.Schema.Ngrams (NgramsTypeId, NgramsId)
...@@ -29,6 +29,11 @@ import Gargantext.Database.Admin.Types.Node ...@@ -29,6 +29,11 @@ import Gargantext.Database.Admin.Types.Node
type ContextNodeNgrams = type ContextNodeNgrams =
ContextNodeNgramsPoly ContextId ListId NgramsId NgramsTypeId Double TermsCount ContextNodeNgramsPoly ContextId ListId NgramsId NgramsTypeId Double TermsCount
type ContextNodeNgramsTest =
ContextNodeNgramsPoly ContextId ListId NgramsId Int Double TermsCount
type ContextNodeNgramsTest' =
ContextNodeNgramsPoly ContextId ListId NgramsId Int Double Int64
data ContextNodeNgramsPoly c n ngrams_id ngt w dc data ContextNodeNgramsPoly c n ngrams_id ngt w dc
= ContextNodeNgrams { _cnng_context_id :: !c = ContextNodeNgrams { _cnng_context_id :: !c
...@@ -55,6 +60,22 @@ type ContextNodeNgramsRead = ...@@ -55,6 +60,22 @@ type ContextNodeNgramsRead =
(Field SqlFloat8) (Field SqlFloat8)
(Field SqlInt4 ) (Field SqlInt4 )
type ContextNodeNgramsAgg =
ContextNodeNgramsPoly (Field SqlInt4 )
(Field SqlInt4 )
(Field SqlInt4 )
(Field SqlInt4 )
(Field SqlFloat8)
(Field SqlInt8 )
type ContextNodeNgramsAggPart =
ContextNodeNgramsPoly (Field SqlInt4 )
(Field SqlInt4 )
(Field SqlInt4 )
(Field SqlInt4 )
(Field SqlFloat8)
(Field SqlInt4 )
$(makeAdaptorAndInstance "pContextNodeNgrams" ''ContextNodeNgramsPoly) $(makeAdaptorAndInstance "pContextNodeNgrams" ''ContextNodeNgramsPoly)
makeLenses ''ContextNodeNgramsPoly makeLenses ''ContextNodeNgramsPoly
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment