list_knowledge.sql 1.8 KB

1234567891011121314151617181920212223242526272829303132
  1. SELECT *
  2. FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
  3. "temp_knowledge".desc,
  4. "temp_knowledge".type,
  5. 'knowledge' as resource_type,
  6. "temp_knowledge".workspace_id,
  7. "temp_knowledge".folder_id,
  8. "temp_knowledge".user_id,
  9. "user"."nick_name" as nick_name,
  10. "temp_knowledge".create_time,
  11. "temp_knowledge".update_time,
  12. "temp_knowledge".file_size_limit,
  13. "temp_knowledge".file_count_limit,
  14. "temp_knowledge"."scope",
  15. "temp_knowledge"."embedding_model_id"::text, "document_temp"."char_length",
  16. to_json("temp_knowledge".meta)::jsonb as meta, CASE
  17. WHEN
  18. "app_knowledge_temp"."count" IS NULL THEN 0
  19. ELSE "app_knowledge_temp"."count" END AS application_mapping_count,
  20. "document_temp".document_count
  21. FROM (SELECT knowledge.*
  22. FROM knowledge knowledge ${knowledge_custom_sql}) temp_knowledge
  23. LEFT JOIN (SELECT "count"("id") AS document_count, "sum"("char_length") "char_length", knowledge_id
  24. FROM "document"
  25. GROUP BY knowledge_id) "document_temp" ON temp_knowledge."id" = "document_temp".knowledge_id
  26. LEFT JOIN (SELECT "count"("id"), knowledge_id
  27. FROM application_knowledge_mapping
  28. GROUP BY knowledge_id) app_knowledge_temp
  29. ON temp_knowledge."id" = "app_knowledge_temp".knowledge_id
  30. left join "user" on "user".id = temp_knowledge.user_id
  31. ) temp
  32. ${default_sql}