list_resource_mapping.sql 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. WITH source_data_cte AS (SELECT 'APPLICATION' as source_type,
  2. id,
  3. "name",
  4. "desc",
  5. "user_id",
  6. "workspace_id",
  7. "icon",
  8. "type",
  9. "folder_id"
  10. FROM application
  11. UNION ALL
  12. SELECT 'KNOWLEDGE' as source_type,
  13. id,
  14. "name",
  15. "desc",
  16. "user_id",
  17. "workspace_id",
  18. "type"::text as "icon" , "type"::text as "type", "folder_id"
  19. FROM knowledge
  20. UNION ALL
  21. SELECT 'TOOL' as source_type,
  22. id,
  23. "name",
  24. "desc",
  25. "user_id",
  26. "workspace_id",
  27. "icon",
  28. "tool_type" as "type",
  29. "folder_id"
  30. FROM tool)
  31. SELECT rm.*,
  32. sdc.*,
  33. u.nick_name as username
  34. FROM resource_mapping rm
  35. LEFT JOIN source_data_cte sdc
  36. ON rm.source_type = sdc.source_type
  37. AND rm.source_id::uuid = sdc.id
  38. LEFT JOIN "public"."user" u
  39. on u.id = sdc.user_id