Ver Fonte

add aianswerlocal

lizg há 2 dias atrás
pai
commit
b9ce783900
39 ficheiros alterados com 36841 adições e 0 exclusões
  1. 10 0
      odbctest/mql/aianswer_local/10drop.mql
  2. 342 0
      odbctest/mql/aianswer_local/11class.mql
  3. 11 0
      odbctest/mql/aianswer_local/12edge.mql
  4. 36152 0
      odbctest/mql/aianswer_local/13data.mql
  5. 7 0
      odbctest/mql/aianswer_local/301valido.mql
  6. 7 0
      odbctest/mql/aianswer_local/302valido.mql
  7. 7 0
      odbctest/mql/aianswer_local/303valido.mql
  8. 7 0
      odbctest/mql/aianswer_local/304valido.mql
  9. 7 0
      odbctest/mql/aianswer_local/305valido.mql
  10. 7 0
      odbctest/mql/aianswer_local/306valido.mql
  11. 7 0
      odbctest/mql/aianswer_local/307valido.mql
  12. 7 0
      odbctest/mql/aianswer_local/308valido.mql
  13. 7 0
      odbctest/mql/aianswer_local/309valido.mql
  14. 7 0
      odbctest/mql/aianswer_local/310valido.mql
  15. 10 0
      odbctest/mql/aianswer_local/311valido.mql
  16. 7 0
      odbctest/mql/aianswer_local/312valido.mql
  17. 7 0
      odbctest/mql/aianswer_local/313valido.mql
  18. 7 0
      odbctest/mql/aianswer_local/314valido.mql
  19. 12 0
      odbctest/mql/aianswer_local/315valido.mql
  20. 7 0
      odbctest/mql/aianswer_local/316valido.mql
  21. 7 0
      odbctest/mql/aianswer_local/317valido.mql
  22. 7 0
      odbctest/mql/aianswer_local/318valido.mql
  23. 7 0
      odbctest/mql/aianswer_local/319valido.mql
  24. 7 0
      odbctest/mql/aianswer_local/320valido.mql
  25. 7 0
      odbctest/mql/aianswer_local/321valido.mql
  26. 18 0
      odbctest/mql/aianswer_local/322valido.mql
  27. 7 0
      odbctest/mql/aianswer_local/323valido.mql
  28. 7 0
      odbctest/mql/aianswer_local/324valido.mql
  29. 7 0
      odbctest/mql/aianswer_local/325valido.mql
  30. 14 0
      odbctest/mql/aianswer_local/326valido.mql
  31. 7 0
      odbctest/mql/aianswer_local/327valido.mql
  32. 7 0
      odbctest/mql/aianswer_local/328valido.mql
  33. 15 0
      odbctest/mql/aianswer_local/329valido.mql
  34. 7 0
      odbctest/mql/aianswer_local/330valido.mql
  35. 13 0
      odbctest/mql/aianswer_local/331valido.mql
  36. 9 0
      odbctest/mql/aianswer_local/332valido.mql
  37. 15 0
      odbctest/mql/aianswer_local/333valido.mql
  38. 28 0
      odbctest/mql/aianswer_local/334valido.mql
  39. 17 0
      odbctest/mql/aianswer_local/335valido.mql

+ 10 - 0
odbctest/mql/aianswer_local/10drop.mql

@@ -0,0 +1,10 @@
+delete from /univ_demo_local/ with version
+/**
+output()
+onerror(continue,`not exist`,`not find`,`not found`)
+**/
+;
+
+
+drop class if exists /univ_demo_local/
+;

+ 342 - 0
odbctest/mql/aianswer_local/11class.mql

@@ -0,0 +1,342 @@
+create class if not exists univ_demo_local : / ( )with autosearch=true , version=false , key=manu, alias='univ_demo_local' , namespace='univ_demo_local' ;
+create class if not exists /univ_demo_local/agent_log ( 
+		agent_name		varchar,
+		answer			varchar,
+		end_time		timestamp,
+		finish_reason		varchar,
+		id					varchar,
+		input_token_count		int,
+		original_end_time		timestamp,
+		original_question		varchar,
+		original_question_id		varchar,
+		original_start_time		timestamp,
+		output_token_count		int,
+		question		varchar,
+		session_id		varchar,
+		start_time		timestamp,
+		total_token_count		int,
+		
+		index( agent_name,answer,end_time,finish_reason,id,input_token_count,original_end_time,original_question,original_question_id,original_start_time,output_token_count,question,session_id,start_time,total_token_count) 
+
+
+		)with autosearch=true , version=false , key=manu, alias='agent_log' , nickname='univ_demo_local_agent_log' ;
+		
+create class if not exists /univ_demo_local/mgn_duty ( 
+		account			varchar	"工号",
+		last_flag		varchar	"是否现行政职务",
+		last_flag_code		varchar	"是否现行政职务代码",
+		level				varchar	"行政职务级别",
+		level_code		varchar	"行政职务级别代码",
+		name				varchar	"姓名",
+		title				varchar	"行政职务名称",
+		title_code		varchar	"行政职务名称代码",
+		unit				varchar	"行政职务任职部门",
+		xzzw_sx			varchar	"行政职务任职属性",
+		xzzw_sx_code		varchar	"行政职务任职属性代码",
+		
+		index( account,last_flag,last_flag_code,level,level_code,name,title,title_code,unit,xzzw_sx,xzzw_sx_code) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='当前行政职务' , nickname='univ_demo_local_mgn_duty' ;
+		
+create class if not exists /univ_demo_local/org ( 
+		code				varchar	"单位代码",
+		dept_sort		varchar	"单位类别代码",
+		dept_sort_name		varchar	"单位类别名",
+		dwjb				varchar	"单位级别代码",
+		dwjb_name		varchar	"单位级别名",
+		name				varchar	"单位全称",
+		up					varchar	"上级单位",
+		
+		index( code,dept_sort,dept_sort_name,dwjb,dwjb_name,name,up) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='组织机构信息' , nickname='univ_demo_local_org' ;
+		
+create class if not exists /univ_demo_local/paper ( 
+		abstract		text	"摘要",
+		journals		varchar	"期刊",
+		keywords		text	"关键字",
+		level				varchar	"等级",
+		paper_file		list<varchar>,
+		type				varchar	"类型",
+		title				text	"标题",
+		
+		index( abstract,journals,keywords,level,paper_file,type,title) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='论文' , nickname='univ_demo_local_paper' ;
+		
+create class if not exists /univ_demo_local/person ( 
+		account			varchar	"工号",
+		actual_quit_date		timestamp	"真实离校日期(离校日期/人员离退休日期/人员去世日期 三个字段中最小的时间)",
+		age					varchar	"年龄",
+		birthday		varchar,
+		deceased_date		timestamp	"人员去世日期",
+		degree_level		varchar	"学位层次",
+		degree_level_code		varchar	"学位层次代码",
+		is_last_degree		varchar	"是否最高学位",
+		is_last_degree_code		varchar	"是否最高学位代码",
+		join_u_date		timestamp	"报到入职日期",
+		lx_date			timestamp	"来校工作日期",
+		main_dept		varchar	"人事所在单位",
+		name				varchar	"姓名",
+		nation			varchar	"民族",
+		nation_code		varchar	"民族代码",
+		person_sort		varchar	"编制类别",
+		person_sort_code		varchar	"编制类别代码",
+		photo_works		list<varchar>,
+		polity			varchar	"政治面貌",
+		polity_code		varchar	"政治面貌代码",
+		quit_date		timestamp	"离校日期",
+		retire_date		timestamp	"人员离退休日期",
+		sex					varchar	"性别",
+		sex_code		varchar	"性别代码",
+		staff_from		varchar	"教职工来源",
+		staff_from_code		varchar	"教职工来源代码",
+		staff_type		varchar	"人员分类",
+		staff_type_code		varchar	"人员分类代码",
+		status			varchar	"人员状态",
+		status_code		varchar	"人员状态代码",
+		subject_first		varchar	"一级学科",
+		subject_first_code		varchar	"一级学科代码",
+		subject_second		varchar	"二级学科",
+		subject_second_code		varchar	"二级学科代码",
+		sz_g				varchar	"师资归属单位",
+		xw_dept			varchar	"学位授予单位",
+		
+		index( account,actual_quit_date,age,birthday,deceased_date,degree_level,degree_level_code,is_last_degree,is_last_degree_code,join_u_date,lx_date,main_dept,name,nation,nation_code,person_sort,person_sort_code,photo_works,polity,polity_code,quit_date,retire_date,sex,sex_code,staff_from,staff_from_code,staff_type,staff_type_code,status,status_code,subject_first,subject_first_code,subject_second,subject_second_code,sz_g,xw_dept) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='教职工基本信息' , nickname='univ_demo_local_person' ;
+		
+create class if not exists /univ_demo_local/student_master ( 
+		account			varchar	"学号",
+		
+		index( account) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='硕士研究生' , nickname='univ_demo_local_student_master' ;
+		
+create class if not exists /univ_demo_local/sys_agent_log ( 
+		agent_name		varchar	"问题类型, 当前使用类名",
+		answer			varchar	"当前与大模型交互的回答",
+		end_time		timestamp	"大模型回答结束时间",
+		finish_reason		varchar,
+		id					varchar,
+		input_token_count		int	"输入token数",
+		original_end_time		timestamp	"原始问题结束时间",
+		original_question		varchar	"原始问题",
+		original_question_id		varchar	"原始问题ID",
+		original_start_time		timestamp	"原始问题开始时间",
+		output_token_count		int	"输出token数",
+		question		varchar	"当前与大模型交互的问题",
+		session_id		varchar	"当前与大模型交互的sessionID",
+		start_time		timestamp	"大模型回答开始时间",
+		total_token_count		int	"总数",
+		
+		index( agent_name,answer,end_time,finish_reason,id,input_token_count,original_end_time,original_question,original_question_id,original_start_time,output_token_count,question,session_id,start_time,total_token_count) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='大模型调用日志' , nickname='univ_demo_local_sys_agent_log' ;
+create class if not exists /univ_demo_local/sys_api_permission ( 
+		api_name		varchar	"接口名称",
+		create_time		timestamp	"创建时间",
+		enabled			int	"是否启用:0-否 1-是",
+		method			varchar	"请求方法",
+		modify_time		timestamp	"修改时间",
+		module			varchar	"所属模块",
+		permission		varchar	"delete)",
+		url_pattern		varchar	"请求路径",
+		
+		index( api_name,create_time,enabled,method,modify_time,module,permission,url_pattern) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='系统接口权限' , nickname='univ_demo_local_sys_api_permission' ;
+create class if not exists /univ_demo_local/sys_data_permission ( 
+		class_name		varchar	"创建时间",
+		create_time		timestamp	"创建时间",
+		data_type		int	" field",
+		modify_time		timestamp	"修改时间",
+		permission		varchar	"0:没权限|1:可以看|2:仅分组}] ",
+		post_id			varchar	"岗位ID",
+		
+		index( class_name,create_time,data_type,modify_time,permission,post_id) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='系统数据权限' , nickname='univ_demo_local_sys_data_permission' ;
+create class if not exists /univ_demo_local/sys_menu ( 
+		component		varchar	"组件路径",
+		create_time		timestamp	"创建时间",
+		menu_name		varchar	"菜单名称",
+		modify_time		timestamp	"修改时间",
+		parent_id		varchar	"父菜单ID",
+		path				varchar	"菜单路径(前端路由)",
+		permission		varchar	"view)",
+		sort				int	"排序值",
+		status			int	"状态:0-禁用 1-启用",
+		type				int	"菜单类型:0-目录 1-菜单 2-按钮",
+		
+		index( component,create_time,menu_name,modify_time,parent_id,path,permission,sort,status,type) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='系统菜单权限' , nickname='univ_demo_local_sys_menu' ;
+create class if not exists /univ_demo_local/sys_post ( 
+		create_time		timestamp	"创建时间",
+		modify_time		timestamp	"最后修改时间",
+		parent_id		varchar	"父级岗位ID,顶级岗位为 null 或空字符串",
+		post_desc		varchar	"岗位描述",
+		post_name		varchar	"岗位名称",
+		post_type		int	"菜单 3: 数据",
+		sort				int	"排序值",
+		
+		index( create_time,modify_time,parent_id,post_desc,post_name,post_type,sort) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='系统岗位' , nickname='univ_demo_local_sys_post' ;
+create class if not exists /univ_demo_local/sys_post_api_rlt ( 
+		api_id			varchar	"接口权限ID",
+		permission		varchar	"delete)",
+		post_id			varchar	"岗位ID",
+		
+		index( api_id,permission,post_id) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='岗位与接口权限关联' , nickname='univ_demo_local_sys_post_api_rlt' ;
+create class if not exists /univ_demo_local/sys_post_menu_rlt ( 
+		menu_id			varchar	"菜单ID",
+		permission		varchar	"delete) 这里做个冗余",
+		post_id			varchar	"岗位ID",
+		
+		index( menu_id,permission,post_id) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='岗位与菜单权限关联' , nickname='univ_demo_local_sys_post_menu_rlt' ;
+create class if not exists /univ_demo_local/sys_role ( 
+		create_time		timestamp	"创建时间",
+		creator_id		varchar	"创建者ID",
+		modifier_id		varchar	"修改者ID",
+		modify_time		timestamp	"修改时间",
+		role_desc		varchar	"角色描述",
+		role_name		varchar	"角色名称",
+		role_type		int	"角色类型 0=普通角色;1=管理员角色",
+		
+		index( create_time,creator_id,modifier_id,modify_time,role_desc,role_name,role_type) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='角色实体类 Business Object' , nickname='univ_demo_local_sys_role' ;
+create class if not exists /univ_demo_local/sys_role_post_rlt ( 
+		create_time		timestamp	"创建时间",
+		modify_time		timestamp	"修改时间",
+		post_id			varchar	"岗位id",
+		post_type		int	" 数据",
+		role_id			varchar	"角色id",
+		
+		index( create_time,modify_time,post_id,post_type,role_id) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='角色关联岗位实体' , nickname='univ_demo_local_sys_role_post_rlt' ;
+create class if not exists /univ_demo_local/sys_role_user_rlt ( 
+		create_time		timestamp	"创建时间",
+		creator_id		varchar	"创建者id",
+		modifier_id		varchar	"修改者id",
+		modify_time		timestamp	"修改时间",
+		role_id			varchar	"角色id",
+		user_id			varchar	"用户id",
+		
+		index( create_time,creator_id,modifier_id,modify_time,role_id,user_id) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='用户角色关联实体' , nickname='univ_demo_local_sys_role_user_rlt' ;
+create class if not exists /univ_demo_local/sys_sa_token_kv ( 
+		timeout			bigint	"超时时间",
+		val					varchar	"值",
+		
+		index( timeout,val) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='token缓存库' , nickname='univ_demo_local_sys_sa_token_kv' ;
+create class if not exists /univ_demo_local/sys_user ( 
+		active			int	"删除标识 0=已删除,1=未删除",
+		create_time		timestamp	"创建时间",
+		email				varchar	"电子邮件",
+		enable			int	"禁用标识 0=禁用,1=启用",
+		ims_adress		varchar	"即时通讯地址",
+		login_code		varchar	"账号",
+		login_passwd		varchar	"用户密码",
+		mobile_number		varchar	"手机号码",
+		modify_time		timestamp	"修改时间",
+		notes				varchar	"备注",
+		user_name		varchar	"姓名",
+		user_origin		varchar	"用户来源",
+		
+		index( active,create_time,email,enable,ims_adress,login_code,login_passwd,mobile_number,modify_time,notes,user_name,user_origin) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='用户信息' , nickname='univ_demo_local_sys_user' ;
+create class if not exists /univ_demo_local/szxxsb ( 
+		account			varchar	"工号",
+		gccrc				varchar	"高层次人才项目分层等级",
+		gccrc_code		varchar	"高层次人才项目分层等级代码",
+		hjdc				varchar	"获奖等次",
+		hjdc_code		varchar	"获奖等次代码",
+		hpsj				timestamp	"获批时间",
+		jx_yjdj			varchar	"教育教学业绩等级",
+		jx_yjdj_code		varchar	"教育教学业绩等级代码",
+		name				varchar	"姓名",
+		sydw				varchar	"授予单位",
+		szgsdw			varchar	"师资归属单位",
+		xm_name			varchar	"项目名称",
+		xm_name_code		varchar	"项目名称代码",
+		xmpx				double	"排序",
+		z_mc				varchar	"项目子名称",
+		
+		index( account,gccrc,gccrc_code,hjdc,hjdc_code,hpsj,jx_yjdj,jx_yjdj_code,name,sydw,szgsdw,xm_name,xm_name_code,xmpx,z_mc) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='人才工程荣誉奖励业绩成果' , nickname='univ_demo_local_szxxsb' ;
+		
+create class if not exists /univ_demo_local/szxxsb_xh ( 
+		account			varchar	"工号",
+		name				varchar	"姓名",
+		pq_jssj			timestamp	"聘期结束时间",
+		pq_kssj			timestamp	"聘期开始时间",
+		wcrpm				varchar	"担任学会职务",
+		wcrpm_code		varchar	"担任学会职务代码",
+		xm_name			varchar	"学会名称",
+		xm_name_code		varchar	"学会名称代码",
+		
+		index( account,name,pq_jssj,pq_kssj,wcrpm,wcrpm_code,xm_name,xm_name_code) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='学会职务' , nickname='univ_demo_local_szxxsb_xh' ;
+		
+create class if not exists /univ_demo_local/tech_duty ( 
+		account			varchar	"工号",
+		duty				varchar	"专业技术职务名称",
+		duty_code		varchar	"专业技术职务名称代码",
+		duty_level		varchar	"专业技术职务级别",
+		duty_level_code		varchar	"专业技术职务级别代码",
+		jj_time_end		timestamp	"职务结束时间",
+		jj_time_start		timestamp	"职务开始时间",
+		last_flag		varchar	"是否现任最高",
+		name				varchar	"姓名",
+		
+		index( account,duty,duty_code,duty_level,duty_level_code,jj_time_end,jj_time_start,last_flag,name) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='专业技术职务' , nickname='univ_demo_local_tech_duty' ;
+		
+create class if not exists /univ_demo_local/tech_gwdj ( 
+		account			varchar	"工号",
+		hj_dj				varchar	"专业技术岗位等级",
+		jjtime_end		timestamp	"岗位等级结束时间",
+		jjtime_start		timestamp	"岗位等级开始时间",
+		last_flag		varchar	"是否现任最高",
+		name				varchar	"姓名",
+		
+		index( account,hj_dj,jjtime_end,jjtime_start,last_flag,name) 
+
+
+		)with core=local, autosearch=true , version=false , key=manu, alias='专业技术岗位等级' , nickname='univ_demo_local_tech_gwdj' ;
+		

+ 11 - 0
odbctest/mql/aianswer_local/12edge.mql

@@ -0,0 +1,11 @@
+
+create edge type if not exists univ_demo_local.person_to_master '教师指导研究生';
+create edge type if not exists univ_demo_local.person_to_szxxsb_xh '教职工学会职务关系';
+create edge type if not exists univ_demo_local.person_to_tech_gwdj '教职工专业技术岗位等级晋级关系';
+create edge type if not exists univ_demo_local.person_to_org '教职工人事所属组织机构关系';
+create edge type if not exists univ_demo_local.person_to_szxxsb '教职工人才工程荣誉奖励业绩成果关系';
+create edge type if not exists univ_demo_local.own_paper '拥有论文';
+create edge type if not exists univ_demo_local.person_to_mgn_duty '教职工当前行政职务关系';
+create edge type if not exists univ_demo_local.person_to_org_by_sz '教职工师资归属组织机构关系';
+create edge type if not exists univ_demo_local.person_to_tech_duty '教职工专业技术职务晋级关系';
+create edge type if not exists univ_demo_local.org_to_org '组织机构层级关系';

Diff do ficheiro suprimidas por serem muito extensas
+ 36152 - 0
odbctest/mql/aianswer_local/13data.mql


+ 7 - 0
odbctest/mql/aianswer_local/301valido.mql

@@ -0,0 +1,7 @@
+
+MATCH (person:/univ_demo_local/person WHERE status = '离校' AND (person_sort = '事业编' OR staff_type = '校聘合同制人员') AND actual_quit_date >= '2024-01-01 00:00:00' AND actual_quit_date <= '2024-12-31 23:59:59')-[:person_to_org*1..1]->(org:/univ_demo_local/org) RETURN person.account AS "工号", person.name AS "姓名", person.actual_quit_date AS "离校日期", org.name AS "人事所在单位" ORDER BY actual_quit_date DESC WITH TIMEOUT = 6m
+/**
+output()
+count(20)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/302valido.mql

@@ -0,0 +1,7 @@
+
+{"sql":"SELECT DISTINCT \"person\".sz_g AS \"师资归属单位\" FROM /univ_demo_local/person \"person\" WHERE \"person\".status = '在职' AND \"person\".sz_g != '' LIMIT 0, 500000"}
+/**
+output()
+count(42)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/303valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.teacher_account) AS "senior_teacher_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND person_sort = '事业编' AND staff_type = '专任教师岗位')-[:person_to_tech_duty*1..1]->(tech_duty:/univ_demo_local/tech_duty WHERE duty_level = '正高级' AND last_flag = '是') RETURN person.account AS "teacher_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("senior_teacher_count",316,1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/304valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%长江学者%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 8, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/305valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "party_member_count" FROM (SELECT person.account AS "person_account" FROM /univ_demo_local/person person WHERE person.status = '在职' AND person.polity = '中共党员' LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("party_member_count", 1540, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/306valido.mql

@@ -0,0 +1,7 @@
+
+SELECT avg(temp01.staff_age) AS "avg_age" FROM (SELECT person.age AS "staff_age" FROM /univ_demo_local/person person WHERE person.status = '在职' LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("avg_age", 44.20~44.205, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/307valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "retired_count" FROM (SELECT person.account AS "person_account" FROM /univ_demo_local/person person WHERE person.status in ('退休', '离休', '退休返聘') LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("retired_count", 1469, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/308valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%国家级精品类课程%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 106, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/309valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%北京市优秀本科毕业论文(设计)指导教师%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 88, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/310valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%国务院政府特殊津贴%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 15, 1)
+**/
+;

Diff do ficheiro suprimidas por serem muito extensas
+ 10 - 0
odbctest/mql/aianswer_local/311valido.mql


Diff do ficheiro suprimidas por serem muito extensas
+ 7 - 0
odbctest/mql/aianswer_local/312valido.mql


Diff do ficheiro suprimidas por serem muito extensas
+ 7 - 0
odbctest/mql/aianswer_local/313valido.mql


Diff do ficheiro suprimidas por serem muito extensas
+ 7 - 0
odbctest/mql/aianswer_local/314valido.mql


Diff do ficheiro suprimidas por serem muito extensas
+ 12 - 0
odbctest/mql/aianswer_local/315valido.mql


+ 7 - 0
odbctest/mql/aianswer_local/316valido.mql

@@ -0,0 +1,7 @@
+
+MATCH (person:/univ_demo_local/person WHERE status = '在职' AND person_sort = '事业编' AND staff_type = '专任教师岗位')-[:person_to_org*1..1]->(org:/univ_demo_local/org) RETURN person.name AS "name", person.account AS "account", person.lx_date AS "lx_date", org.name AS "org_name" ORDER BY lx_date ASC WITH TIMEOUT = 6m
+/**
+output()
+count(1029)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/317valido.mql

@@ -0,0 +1,7 @@
+
+{"sql":"SELECT \"org\".name AS \"单位全称\", \"org\".up AS \"上级单位\" FROM /univ_demo_local/org \"org\" WHERE \"org\".dept_sort_name = '教学科研' AND \"org\".dwjb_name = '正科级' LIMIT 0, 500000"}
+/**
+output()
+count(96)
+**/
+;

Diff do ficheiro suprimidas por serem muito extensas
+ 7 - 0
odbctest/mql/aianswer_local/318valido.mql


Diff do ficheiro suprimidas por serem muito extensas
+ 7 - 0
odbctest/mql/aianswer_local/319valido.mql


+ 7 - 0
odbctest/mql/aianswer_local/320valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%全国政协委员%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 2, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/321valido.mql

@@ -0,0 +1,7 @@
+
+SELECT temp01.dept_sort AS "单位类别", avg(temp01.person_age) AS "平均年龄" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_org*1..1]->(org:/univ_demo_local/org) RETURN person.age AS "person_age", org.dept_sort_name AS "dept_sort") temp01 GROUP BY temp01."dept_sort" ORDER BY "平均年龄" DESC LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+count(8)
+**/
+;

Diff do ficheiro suprimidas por serem muito extensas
+ 18 - 0
odbctest/mql/aianswer_local/322valido.mql


+ 7 - 0
odbctest/mql/aianswer_local/323valido.mql

@@ -0,0 +1,7 @@
+
+SELECT avg(temp01.staff_age) AS "avg_age" FROM (SELECT person.age AS "staff_age" FROM /univ_demo_local/person person WHERE person.status = '在职' LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("avg_age", 44.2047~44.205, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/324valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "talent_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE gccrc in ('国家级人才A类', '国家级人才B类', '国家级人才C类', '省部级人才')) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("talent_count", 75, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/325valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "member_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb_xh*1..1]->(society:/univ_demo_local/szxxsb_xh WHERE xm_name = '北京智能体研究学会' AND (pq_jssj is null OR pq_jssj > 1.777392e+12)) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("member_count", 5, 1)
+**/
+;

+ 14 - 0
odbctest/mql/aianswer_local/326valido.mql

@@ -0,0 +1,14 @@
+
+SELECT count(DISTINCT temp01.teacher_account) AS "a_level_teacher_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND person_sort = '事业编' AND staff_type = '专任教师岗位')-[:person_to_szxxsb*1..1]->(szxxsb:/univ_demo_local/szxxsb WHERE jx_yjdj = 'A级') RETURN person.account AS "teacher_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("a_level_teacher_count", 168, 1)
+**/
+;
+
+SELECT count(DISTINCT temp01.person_account) AS "teacher_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND person_sort = '事业编' AND staff_type = '专任教师岗位')-[:person_to_szxxsb*1..1]->(szxxsb:/univ_demo_local/szxxsb) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("teacher_count", 845, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/327valido.mql

@@ -0,0 +1,7 @@
+
+SELECT temp.account AS "account", temp.name AS "name", temp.join_date AS "join_date" FROM (SELECT person.account AS "account", person.name AS "name", person.lx_date AS "join_date" FROM /univ_demo_local/person person WHERE person.status = '在职' AND person.person_sort = '事业编' AND person.staff_type = '专任教师岗位' AND person.account != 'ZGZFDX' LIMIT 0, 500000) temp ORDER BY "join_date" DESC LIMIT 0, 10 WITH TIMEOUT = 6m
+/**
+output()
+count(10)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/328valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp.account) AS "person_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职')-[:person_to_szxxsb*1..1]->(honor:/univ_demo_local/szxxsb WHERE xm_name like '%国家级一流专业第一负责人%') RETURN person.account AS "account") temp LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("person_count", 10, 1)
+**/
+;

+ 15 - 0
odbctest/mql/aianswer_local/329valido.mql

@@ -0,0 +1,15 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "total_person_count" FROM (SELECT person.account AS "person_account" FROM /univ_demo_local/person person WHERE person.status = '在职' LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("total_person_count", 3109, 1)
+**/
+;
+
+
+SELECT count(DISTINCT temp01.person_account) AS "contract_staff_count" FROM (SELECT person.account AS "person_account" FROM /univ_demo_local/person person WHERE person.status = '在职' AND person.staff_type in ('校聘合同制人员', '院聘合同制人员') LIMIT 0, 500000) temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("contract_staff_count", 966, 1)
+**/
+;

+ 7 - 0
odbctest/mql/aianswer_local/330valido.mql

@@ -0,0 +1,7 @@
+
+SELECT count(DISTINCT temp01.teacher_account) AS "senior_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND person_sort = '事业编' AND staff_type = '专任教师岗位')-[:person_to_tech_duty*1..1]->(tech_duty:/univ_demo_local/tech_duty WHERE duty_level = '正高级' AND last_flag = '是') RETURN person.account AS "teacher_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("senior_count", 316, 1)
+**/
+;

Diff do ficheiro suprimidas por serem muito extensas
+ 13 - 0
odbctest/mql/aianswer_local/331valido.mql


+ 9 - 0
odbctest/mql/aianswer_local/332valido.mql

@@ -0,0 +1,9 @@
+
+SELECT temp01.teacher_dept AS "师资归属单位", count(DISTINCT temp01.teacher_account) AS "教职工人数" FROM (SELECT person.account AS "teacher_account", person.sz_g AS "teacher_dept" FROM /univ_demo_local/person person WHERE person.status = '在职' AND person.sz_g != '' LIMIT 0, 500000) temp01 GROUP BY temp01."teacher_dept" ORDER BY "教职工人数" DESC LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+count(42)
+matchcount("师资归属单位", "行为经济学与社会学学院", 1)
+matchcount("教职工人数", 127, 1)
+**/
+;

Diff do ficheiro suprimidas por serem muito extensas
+ 15 - 0
odbctest/mql/aianswer_local/333valido.mql


+ 28 - 0
odbctest/mql/aianswer_local/334valido.mql

@@ -0,0 +1,28 @@
+
+SELECT count(DISTINCT temp01.person_account) AS "cadre_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND age >= 36 AND age <= 45)-[:person_to_mgn_duty*1..1]->(mgn_duty:/univ_demo_local/mgn_duty WHERE xzzw_sx = '主职' AND last_flag = '是' AND level in ('正处级', '副处级')) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("cadre_count", 81, 1)
+**/
+;
+
+SELECT count(DISTINCT temp01.person_account) AS "cadre_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND age >= 46 AND age <= 50)-[:person_to_mgn_duty*1..1]->(mgn_duty:/univ_demo_local/mgn_duty WHERE xzzw_sx = '主职' AND last_flag = '是' AND level in ('正处级', '副处级')) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("cadre_count", 55, 1)
+**/
+;
+
+SELECT count(DISTINCT temp01.person_account) AS "leader_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND age <= 35)-[:person_to_mgn_duty*1..1]->(mgn_duty:/univ_demo_local/mgn_duty WHERE xzzw_sx = '主职' AND last_flag = '是' AND level in ('正处级', '副处级')) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("leader_count", 7, 1)
+**/
+;
+
+SELECT count(DISTINCT temp01.person_account) AS "cadre_count" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND age >= 51)-[:person_to_mgn_duty*1..1]->(mgn_duty:/univ_demo_local/mgn_duty WHERE xzzw_sx = '主职' AND last_flag = '是' AND (level = '正处级' OR level = '副处级')) RETURN person.account AS "person_account") temp01 LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+matchcount("cadre_count", 78, 1)
+**/
+;

+ 17 - 0
odbctest/mql/aianswer_local/335valido.mql

@@ -0,0 +1,17 @@
+
+MATCH (person:/univ_demo_local/person WHERE status = '在职' AND polity = '中共党员')-[:person_to_szxxsb_xh*1..1]->(society:/univ_demo_local/szxxsb_xh WHERE wcrpm = '会长' AND (pq_jssj is null OR pq_jssj > 1.777392e+12)) RETURN person.name AS "教职工姓名", person.account AS "工号", society.xm_name AS "学会名称", society.wcrpm AS "担任职务", society.name AS "_univ_demo_szxxsb_xh_name_0" WITH TIMEOUT = 6m
+/**
+output()
+matchcount("教职工姓名", "罗勇", 1)
+matchcount("教职工姓名", "苏宁祥", 1)
+matchcount("教职工姓名", "卢竹焕", 1)
+matchcount("教职工姓名", "许量", 1)
+**/
+;
+
+SELECT temp01.society_name AS "学会名称", count(DISTINCT temp01.person_account) AS "中共党员人数" FROM (MATCH (person:/univ_demo_local/person WHERE status = '在职' AND polity = '中共党员')-[:person_to_szxxsb_xh*1..1]->(society:/univ_demo_local/szxxsb_xh WHERE wcrpm = '会长' AND (pq_jssj is null OR pq_jssj > 1.777392e+12)) RETURN person.account AS "person_account", society.xm_name AS "society_name") temp01 GROUP BY temp01."society_name" LIMIT 0, 500000 WITH TIMEOUT = 6m
+/**
+output()
+count(4)
+**/
+;