2025-09-28 16:44:58 +08:00
|
|
|
|
question_and_answer = [
|
2025-10-14 10:31:00 +08:00
|
|
|
|
|
2025-10-16 17:42:06 +08:00
|
|
|
|
{"question": "XX部有多少员工,男女员工分别有多少",
|
2025-09-28 16:44:58 +08:00
|
|
|
|
"answer": '''
|
2025-10-15 10:14:35 +08:00
|
|
|
|
SELECT COUNT(*) AS "总人数",
|
|
|
|
|
|
SUM(CASE WHEN gender = '1' THEN 1 ELSE 0 END) AS "男员工数",
|
|
|
|
|
|
SUM(CASE WHEN gender = '2' THEN 1 ELSE 0 END) AS "女员工数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB.t_pr3rl2oj_yj_person_database p
|
|
|
|
|
|
WHERE p.internal_dept IN (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs" START
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WITH "name"||"shortname" LIKE '%XX部%'
|
2025-10-15 10:14:35 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
|
|
|
|
|
AND p.dr = 0
|
|
|
|
|
|
LIMIT 1000;
|
2025-09-28 16:44:58 +08:00
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-14 10:31:00 +08:00
|
|
|
|
"question": "外部单位是联通下面有哪些员工",
|
2025-09-28 16:44:58 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT "id" AS "id",
|
|
|
|
|
|
"code" AS "工号",
|
|
|
|
|
|
"name" AS "姓名",
|
2025-10-14 11:46:25 +08:00
|
|
|
|
|
2025-09-28 16:44:58 +08:00
|
|
|
|
"external_unit" AS "外部单位"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database"
|
2025-10-14 11:46:25 +08:00
|
|
|
|
WHERE "external_unit" LIKE '%联通%' LIMIT 1000
|
2025-09-28 16:44:58 +08:00
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"question": "9月有多少哪些员工在休假",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT DISTINCT p."id" AS "id",
|
|
|
|
|
|
p."code" AS "工号",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
p."internal_unit" AS "内部单位",
|
|
|
|
|
|
p."external_unit" AS "外部单位"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
INNER JOIN "YJOA_APPSERVICE_DB"."t_yj_person_status" ps ON p."code" = ps."person_id"
|
|
|
|
|
|
WHERE ps."status" = '1003'
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-09%' LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
2025-10-14 11:46:25 +08:00
|
|
|
|
|
2025-09-28 16:44:58 +08:00
|
|
|
|
{
|
|
|
|
|
|
"question": "博士和硕士分别有哪些员工",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT DISTINCT "name" AS "姓名",
|
|
|
|
|
|
"code" AS "工号",
|
|
|
|
|
|
"internal_unit" AS "内部单位",
|
|
|
|
|
|
"external_unit" AS "外部单位",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN "highest_degree" = '1' THEN '学士学位'
|
|
|
|
|
|
WHEN "highest_degree" = '2' THEN '硕士学位'
|
|
|
|
|
|
WHEN "highest_degree" = '3' THEN '博士学位'
|
|
|
|
|
|
WHEN "highest_degree" = '4' THEN '无' END AS "最高学位"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database"
|
|
|
|
|
|
WHERE "highest_degree" IN ('2', '3')
|
|
|
|
|
|
AND "dr" = '0'
|
|
|
|
|
|
ORDER BY "最高学位", "姓名" LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
}, {
|
2025-10-14 11:46:25 +08:00
|
|
|
|
"question": "8月份在藏,超过10天的有哪些员工",
|
2025-09-28 16:44:58 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT DISTINCT p."code" AS "工号",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN p."internal_unit" IS NOT NULL AND p."internal_unit" != '' THEN p."internal_unit"
|
|
|
|
|
|
ELSE p."external_unit" END AS "单位",
|
|
|
|
|
|
COUNT(ps."id") AS "在藏天数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB."t_yj_person_status" ps
|
|
|
|
|
|
JOIN YJOA_APPSERVICE_DB."t_pr3rl2oj_yj_person_database" p ON ps."person_id" = p."code"
|
|
|
|
|
|
WHERE ps."is_in_tibet" = 1
|
|
|
|
|
|
AND ps."dr" = 0
|
|
|
|
|
|
AND p."dr" = 0
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-08%'
|
|
|
|
|
|
GROUP BY p."code", p."name",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN p."internal_unit" IS NOT NULL AND p."internal_unit" != '' THEN p."internal_unit"
|
|
|
|
|
|
ELSE p."external_unit" END
|
|
|
|
|
|
HAVING COUNT(ps."id") > 10
|
|
|
|
|
|
ORDER BY COUNT(ps."id") DESC LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"question": "张三 8月的考勤查询",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT DISTINCT p."code" AS "工号",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
p."internal_unit" AS "内部单位",
|
|
|
|
|
|
p."external_unit" AS "外部单位",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN ps."status" = '1001' THEN '在岗'
|
|
|
|
|
|
WHEN ps."status" = '1002' THEN '出差'
|
|
|
|
|
|
WHEN ps."status" = '1003' THEN '休假,请假'
|
|
|
|
|
|
WHEN ps."status" = '1005' THEN '旷工'
|
|
|
|
|
|
WHEN ps."status" = '1006' THEN '迟到,早退'
|
|
|
|
|
|
WHEN ps."status" = '1007' THEN '休息日'
|
|
|
|
|
|
WHEN ps."status" = '4001' THEN 'am在岗pm缺勤'
|
|
|
|
|
|
WHEN ps."status" = '4002' THEN 'am缺勤pm在岗'
|
|
|
|
|
|
WHEN ps."status" = '6001' THEN 'am在岗pm早退'
|
|
|
|
|
|
WHEN ps."status" = '6002' THEN 'am迟到pm在岗'
|
|
|
|
|
|
WHEN ps."status" = '6004' THEN 'am迟到pm缺勤'
|
|
|
|
|
|
WHEN ps."status" = '4006' THEN 'am缺勤pm早退' END AS "人员状态",
|
|
|
|
|
|
ps."date_value" AS "日期"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_yj_person_status" ps
|
|
|
|
|
|
JOIN "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p ON ps."person_id" = p."code"
|
|
|
|
|
|
WHERE p."name" = '张三'
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-08%'
|
|
|
|
|
|
AND ps."dr" = 0
|
|
|
|
|
|
ORDER BY ps."date_value" DESC LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
2025-10-14 11:46:25 +08:00
|
|
|
|
|
2025-09-28 16:44:58 +08:00
|
|
|
|
{
|
|
|
|
|
|
"question": "负责智能体相关工作的是哪些员工",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT "id" AS "id",
|
|
|
|
|
|
"code" AS "工号",
|
|
|
|
|
|
"name" AS "姓名",
|
|
|
|
|
|
"internal_unit" AS "内部单位",
|
|
|
|
|
|
"external_unit" AS "外部单位",
|
|
|
|
|
|
"work_content" AS "工作内容"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database"
|
|
|
|
|
|
WHERE "work_content" LIKE '%智能体%' LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 10:31:00 +08:00
|
|
|
|
}, {
|
2025-09-28 16:44:58 +08:00
|
|
|
|
"question": "在研发基地工作的有哪些员工",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT "id" AS "id",
|
|
|
|
|
|
"code" AS "工号",
|
|
|
|
|
|
"name" AS "姓名",
|
|
|
|
|
|
"internal_unit" AS "内部单位",
|
|
|
|
|
|
"external_unit" AS "外部单位",
|
|
|
|
|
|
"office_address" AS "办公地点"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database"
|
|
|
|
|
|
WHERE ("office_address" LIKE '%研发基地%' OR "office_city" LIKE '%研发基地%')
|
|
|
|
|
|
AND "dr" = '0' LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 10:31:00 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"question": "查询张三9月在林芝的打卡记录",
|
|
|
|
|
|
"answer": '''
|
2025-10-14 11:46:25 +08:00
|
|
|
|
SELECT a."person_name" AS "姓名",
|
|
|
|
|
|
a."person_id" AS "人员ID",
|
|
|
|
|
|
a."attendance_time" AS "考勤时间",
|
|
|
|
|
|
a."attendance_address" AS "考勤地址",
|
2025-10-14 10:31:00 +08:00
|
|
|
|
CASE
|
|
|
|
|
|
WHEN a."status" = 0 THEN '在岗'
|
|
|
|
|
|
WHEN a."status" = 1 THEN '出差'
|
2025-10-14 11:46:25 +08:00
|
|
|
|
WHEN a."status" = 2 THEN '休假' END AS "状态",
|
2025-10-14 10:31:00 +08:00
|
|
|
|
CASE
|
|
|
|
|
|
WHEN a."enter_or_exit" = 0 THEN '进'
|
|
|
|
|
|
WHEN a."enter_or_exit" = 1
|
2025-10-14 11:46:25 +08:00
|
|
|
|
THEN '出' END AS "进出类型",
|
2025-10-14 10:31:00 +08:00
|
|
|
|
CASE
|
2025-10-14 11:02:44 +08:00
|
|
|
|
WHEN b."region" = 1 THEN '北京'
|
2025-10-14 10:31:00 +08:00
|
|
|
|
WHEN b."region" = 2 THEN '成都'
|
|
|
|
|
|
WHEN b."region" = 3 THEN '秭归'
|
2025-10-14 11:46:25 +08:00
|
|
|
|
WHEN b."region" = 5 THEN '林芝' END AS "地区", AS "门禁点"
|
2025-10-14 10:31:00 +08:00
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_yj_person_attendance" a
|
2025-10-14 11:46:25 +08:00
|
|
|
|
JOIN "YJOA_APPSERVICE_DB"."t_yj_person_ac_area" b
|
|
|
|
|
|
ON a."access_control_point" = b."ac_point"
|
2025-10-14 10:31:00 +08:00
|
|
|
|
WHERE a."person_name" = '张三'
|
|
|
|
|
|
AND b."region" = 5
|
|
|
|
|
|
AND a."attendance_time" >= '2025-09-01'
|
2025-10-14 11:46:25 +08:00
|
|
|
|
AND a."attendance_time"
|
|
|
|
|
|
< '2025-10-01'
|
2025-10-14 10:31:00 +08:00
|
|
|
|
AND a."dr" = 0
|
|
|
|
|
|
ORDER BY a."attendance_time" DESC LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 11:46:25 +08:00
|
|
|
|
}, {
|
2025-10-14 10:31:00 +08:00
|
|
|
|
"question": "查询张三9月份有多少天在岗",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT p."code" AS "工号",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN p."internal_unit" IS NOT NULL AND p."internal_unit" != '' THEN p."internal_unit"
|
|
|
|
|
|
ELSE p."external_unit"
|
|
|
|
|
|
END AS "单位",
|
|
|
|
|
|
COUNT(CASE WHEN ps."status" = '1001' THEN 1 END) AS "在岗天数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB."t_yj_person_status" ps
|
|
|
|
|
|
JOIN YJOA_APPSERVICE_DB."t_pr3rl2oj_yj_person_database" p ON ps."person_id" = p."code"
|
|
|
|
|
|
WHERE p."name" = '张三'
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-09%'
|
|
|
|
|
|
AND ps."dr" = 0
|
|
|
|
|
|
AND p."dr" = 0
|
|
|
|
|
|
GROUP BY p."code", p."name",
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN p."internal_unit" IS NOT NULL AND p."internal_unit" != '' THEN p."internal_unit"
|
|
|
|
|
|
ELSE p."external_unit"
|
|
|
|
|
|
END LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 11:46:25 +08:00
|
|
|
|
}, {
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX中心下有多少员工",
|
2025-10-14 10:31:00 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
select count(*)
|
|
|
|
|
|
from YJOA_APPSERVICE_DB.t_pr3rl2oj_yj_person_database
|
2025-10-14 14:51:00 +08:00
|
|
|
|
where internal_dept in (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs" START
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WITH "name"||"shortname" LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-14 14:51:00 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
2025-10-14 10:31:00 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"question": "各个外部单位下的员工人数统计",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
sELECT "external_unit" AS "外部单位", COUNT(*) AS "员工人数"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database"
|
|
|
|
|
|
WHERE "external_unit" IS NOT NULL
|
|
|
|
|
|
AND "external_unit" != ''
|
|
|
|
|
|
GROUP BY "external_unit"
|
|
|
|
|
|
ORDER BY "员工人数" DESC LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX中心下各个处室分别有多少人",
|
2025-10-14 10:31:00 +08:00
|
|
|
|
"answer": '''
|
2025-10-14 16:16:55 +08:00
|
|
|
|
SELECT o.name AS "处室名称", COUNT(p.id) AS "人数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB.t_pr3rl2oj_yj_person_database p
|
|
|
|
|
|
JOIN IUAP_APDOC_BASEDOC.org_orgs o ON p.internal_dept = o.id
|
|
|
|
|
|
WHERE p.internal_dept IN (
|
|
|
|
|
|
SELECT "id" FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
START WITH "name"||"shortname" LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-14 16:16:55 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
2025-10-14 10:31:00 +08:00
|
|
|
|
AND p.dr = 0
|
2025-10-14 16:16:55 +08:00
|
|
|
|
GROUP BY o.name
|
|
|
|
|
|
ORDER BY "人数" DESC
|
|
|
|
|
|
LIMIT 1000
|
2025-10-14 10:31:00 +08:00
|
|
|
|
'''
|
2025-10-14 11:46:25 +08:00
|
|
|
|
}, {
|
|
|
|
|
|
"question": "张三9月在林芝工作有多少天",
|
2025-10-14 11:02:44 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT count(distinct (TO_CHAR(a."attendance_time", 'yyyy-MM-dd'))) as count
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_yj_person_attendance" a LEFT JOIN "YJOA_APPSERVICE_DB"."t_yj_person_ac_area" b
|
|
|
|
|
|
ON a."access_control_point" = b."ac_point"
|
2025-10-14 11:46:25 +08:00
|
|
|
|
|
2025-10-14 11:02:44 +08:00
|
|
|
|
WHERE a."person_name" = '张三'
|
2025-10-14 11:46:25 +08:00
|
|
|
|
and b.region=5
|
2025-10-14 11:02:44 +08:00
|
|
|
|
AND a."attendance_time" >= '2025-09-01'
|
|
|
|
|
|
AND a."attendance_time"
|
|
|
|
|
|
< '2025-10-01'
|
|
|
|
|
|
AND a."dr" = 0 LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 11:46:25 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "10月XX中心有哪些有员工请假",
|
2025-10-14 11:46:25 +08:00
|
|
|
|
"answer": '''
|
2025-10-14 14:51:00 +08:00
|
|
|
|
SELECT p."id" AS "id",
|
2025-10-14 11:46:25 +08:00
|
|
|
|
p."code" AS "工号",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
p."internal_unit" AS "内部单位",
|
|
|
|
|
|
p."external_unit" AS "外部单位",
|
|
|
|
|
|
CASE WHEN ps."status" = '1003' THEN '休假,请假' ELSE ps."status" END AS "状态"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
INNER JOIN "YJOA_APPSERVICE_DB"."t_yj_person_status" ps ON p."code" = ps."person_id"
|
|
|
|
|
|
WHERE ps."status" = '1003'
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-10%'
|
2025-10-14 14:51:00 +08:00
|
|
|
|
and p.internal_dept in (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs" START
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WITH "name" || "shortname" LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-14 14:51:00 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
2025-10-14 11:46:25 +08:00
|
|
|
|
AND p."dr" = 0
|
|
|
|
|
|
AND ps."dr" = 0 LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"question": "有多少个人迟到,9月",
|
|
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT COUNT(DISTINCT ps."person_id") AS "迟到人数"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_yj_person_status" ps
|
|
|
|
|
|
WHERE ps."status" = '1006'
|
|
|
|
|
|
AND ps."date_value" LIKE '2025-09%' LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-14 15:47:11 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX中心员工年龄段分布图",
|
2025-10-14 15:47:11 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
|
|
|
|
|
ELSE '其他年龄段'
|
|
|
|
|
|
END AS "age_group",
|
|
|
|
|
|
COUNT(*) AS "person_count"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
WHERE "dr" = 0
|
|
|
|
|
|
AND "birthday" IS NOT NULL
|
|
|
|
|
|
AND "birthday" != ''
|
|
|
|
|
|
AND internal_dept IN (
|
|
|
|
|
|
SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
|
|
|
|
|
WHERE "parentid" IN (
|
|
|
|
|
|
SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WHERE name || shortname LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-15 16:52:35 +08:00
|
|
|
|
) OR id IN (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WHERE name || shortname LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%')
|
2025-10-14 15:47:11 +08:00
|
|
|
|
)
|
|
|
|
|
|
GROUP BY
|
|
|
|
|
|
CASE
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 2000 THEN '00后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1990 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 2000 THEN '90后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1980 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1990 THEN '80后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1970 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1980 THEN '70后'
|
|
|
|
|
|
WHEN CAST(SUBSTR("birthday", 1, 4) AS INT) >= 1960 AND CAST(SUBSTR("birthday", 1, 4) AS INT) < 1970 THEN '60后'
|
|
|
|
|
|
ELSE '其他年龄段'
|
|
|
|
|
|
END
|
|
|
|
|
|
ORDER BY "age_group" ASC LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-15 10:14:35 +08:00
|
|
|
|
},{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "查询XX部下面的员工以及他们的年龄",
|
2025-10-15 10:14:35 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT p."id" AS "员工ID",
|
|
|
|
|
|
p."name" AS "姓名",
|
|
|
|
|
|
o."name" AS "所属部门",
|
|
|
|
|
|
CAST(SUBSTR(p."birthday", 1, 4) AS INT) AS "出生年份",
|
|
|
|
|
|
2025 - CAST(SUBSTR(p."birthday", 1, 4) AS INT) AS "年龄",
|
|
|
|
|
|
CASE WHEN p."gender" = '1' THEN '男' WHEN p."gender" = '2' THEN '女' END AS "性别"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
JOIN "IUAP_APDOC_BASEDOC"."org_orgs" o ON p."internal_dept" = o."id"
|
|
|
|
|
|
WHERE p."dr" = 0
|
|
|
|
|
|
AND o."id" IN (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs" START
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WITH "name"||"shortname" LIKE '%XX部%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-15 10:14:35 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid")
|
|
|
|
|
|
AND p."birthday" IS NOT NULL
|
|
|
|
|
|
AND p."birthday" != ''
|
|
|
|
|
|
ORDER BY o."name" ASC, p."birthday" DESC
|
|
|
|
|
|
LIMIT 1000;
|
|
|
|
|
|
'''
|
2025-10-15 16:52:35 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "查询XX部下面的员工的平均年龄",
|
2025-10-15 10:14:35 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT ROUND(AVG(2025 - CAST(SUBSTR(p."birthday", 1, 4) AS INT)), 2) AS "平均年龄"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
JOIN "IUAP_APDOC_BASEDOC"."org_orgs" o ON p."internal_dept" = o."id"
|
|
|
|
|
|
WHERE p."dr" = 0
|
|
|
|
|
|
AND o."id" IN (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs" START
|
2025-10-16 17:42:06 +08:00
|
|
|
|
WITH "name"||"shortname" LIKE '%XX部%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-15 10:14:35 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid")
|
|
|
|
|
|
AND p."birthday" IS NOT NULL
|
|
|
|
|
|
AND p."birthday" != ''
|
|
|
|
|
|
LIMIT 1000;
|
|
|
|
|
|
'''
|
2025-10-15 16:52:35 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX部有几个人,男员工,女员工分别有多少",
|
2025-10-15 16:52:35 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT COUNT(*) AS "总人数",
|
|
|
|
|
|
SUM(CASE WHEN p."gender" = '1' THEN 1 ELSE 0 END) AS "男员工数",
|
|
|
|
|
|
SUM(CASE WHEN p."gender" = '2' THEN 1 ELSE 0 END) AS "女员工数"
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
WHERE p."internal_dept" IN (
|
|
|
|
|
|
SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
START WITH "name" LIKE '%XX部%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-15 16:52:35 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
|
|
|
|
|
AND p."dr" = 0
|
|
|
|
|
|
LIMIT 1000;
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX综合部女员工有多少",
|
2025-10-15 16:52:35 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT (SELECT COUNT(*)
|
|
|
|
|
|
FROM "YJOA_APPSERVICE_DB"."t_pr3rl2oj_yj_person_database" p
|
|
|
|
|
|
WHERE p."internal_dept" IN (SELECT "id"
|
|
|
|
|
|
FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
START WITH "name"||"shortname" LIKE '%XX综合部%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-15 16:52:35 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
|
|
|
|
|
AND p."gender" = '2'
|
|
|
|
|
|
AND p."dr" = 0
|
|
|
|
|
|
) AS "女员工数"
|
|
|
|
|
|
'''
|
2025-10-16 16:02:46 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX中心今天各个处室在岗人员数量",
|
2025-10-16 16:02:46 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT o.name AS "处室名称", COUNT(p.id) AS "人数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB.t_pr3rl2oj_yj_person_database p
|
|
|
|
|
|
JOIN IUAP_APDOC_BASEDOC.org_orgs o ON p.internal_dept = o.id
|
|
|
|
|
|
WHERE p.internal_dept IN (
|
|
|
|
|
|
SELECT "id" FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
START WITH "name"||"shortname" LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-16 16:02:46 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
|
|
|
|
|
AND p.id IN (SELECT person_id FROM "YJOA_APPSERVICE_DB"."t_yj_person_status" WHERE status = '1001' AND date_value = TO_CHAR(SYSDATE, 'yyyy-MM-dd') AND dr = 0)
|
|
|
|
|
|
AND p.dr = 0
|
|
|
|
|
|
GROUP BY o.name
|
|
|
|
|
|
ORDER BY "人数" DESC
|
|
|
|
|
|
LIMIT 1000
|
|
|
|
|
|
'''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2025-10-16 17:42:06 +08:00
|
|
|
|
"question": "XX中心下的XX管理处有多少人",
|
2025-10-16 16:02:46 +08:00
|
|
|
|
"answer": '''
|
|
|
|
|
|
SELECT o.name AS "处室名称", COUNT(p.id) AS "人数"
|
|
|
|
|
|
FROM YJOA_APPSERVICE_DB.t_pr3rl2oj_yj_person_database p
|
|
|
|
|
|
JOIN IUAP_APDOC_BASEDOC.org_orgs o ON p.internal_dept = o.id
|
|
|
|
|
|
WHERE p.internal_dept IN (
|
|
|
|
|
|
SELECT "id" FROM "IUAP_APDOC_BASEDOC"."org_orgs"
|
2025-10-16 17:42:06 +08:00
|
|
|
|
START WITH "name"||"shortname" LIKE '%XX中心%' AND "dr"=0 AND "enable"=1 AND "code" LIKE '%CYJ%'
|
2025-10-16 16:02:46 +08:00
|
|
|
|
CONNECT BY PRIOR "id" = "parentid"
|
|
|
|
|
|
)
|
2025-10-16 17:42:06 +08:00
|
|
|
|
AND p.dr = 0 AND o.name LIKE '%XX管理处%'
|
2025-10-16 16:02:46 +08:00
|
|
|
|
GROUP BY o.name
|
|
|
|
|
|
ORDER BY "人数" DESC
|
|
|
|
|
|
LIMIT 1000
|
|
|
|
|
|
'''
|
2025-10-15 10:14:35 +08:00
|
|
|
|
}
|
2025-10-14 16:16:55 +08:00
|
|
|
|
|
2025-10-15 16:52:35 +08:00
|
|
|
|
|
2025-09-28 16:44:58 +08:00
|
|
|
|
]
|