目前手头有个查询:
SELECT LPP.learning_project_pupilID, SL.serviceID, MAX(LPPO.start_date), SUM(LPPOT.license_mode_value) totalAssignedLicenses FROM t_services_licenses SL INNER JOIN t_pupils_offers_services POS ON POS.service_licenseID = SL.service_licenseID INNER JOIN j_learning_projects_pupils_offers LPPO ON LPPO.learning_project_pupil_offerID = POS.learning_project_pupil_offerID INNER JOIN j_learning_projects_pupils LPP ON LPPO.learning_project_pupilID = LPP.learning_project_pupilID INNER JOIN j_learning_projects_pupils_offers_tracking LPPOT ON LPPOT.pupil_offer_serviceID = POS.pupil_offer_serviceID INNER JOIN t_filters_items FI ON FI.itemID = LPP.learning_project_pupilID_for_filter_join WHERE FI.filterID = '4dce2235-aafd-4ba2-b248-c137ad6ce8ca' AND SL.serviceID IN ('OnlineConversationClasses', 'TwentyFourSeven') GROUP BY LPP.learning_project_pupilID, SL.serviceID
查询非常慢,需要耗时半个多小时之多。
下面是表的一些详细信息:
t_filters_items表:
j_learning_projects_pupils_offers_tracking表:
j_learning_projects_pupils表:
j_learning_projects_pupils_offers表:
t_pupils_offers_services表:
t_services_licenses表:
执行计划如下:
sql脚本如下:
DROP TABLE IF EXISTS t_services_licenses; CREATE TABLE t_services_licenses ( service_licenseID varchar(36) NOT NULL, serviceID varchar(36) NOT NULL, disciplineID varchar(36) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, serial_key varchar(50) DEFAULT NULL, deleted tinyint(3) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (service_licenseID), KEY FK_t_services_licenses_serviceID (serviceID), KEY IDX_disciplineID (disciplineID), KEY IDX_deleted (deleted), CONSTRAINT FK_t_services_licenses_serviceID FOREIGN KEY (serviceID) REFERENCES p_services (serviceID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS t_pupils_offers_services; CREATE TABLE t_pupils_offers_services ( pupil_offer_serviceID varchar(36) NOT NULL, learning_project_pupil_offerID varchar(36) NOT NULL, service_licenseID varchar(36) NOT NULL, triggered_pupil_offer_serviceID varchar(36) DEFAULT NULL, triggered_right_of_use_typeID int(10) unsigned DEFAULT NULL, triggered_right_of_use_value bigint(20) unsigned DEFAULT NULL, PRIMARY KEY (pupil_offer_serviceID), KEY FK_t_pupils_offers_services_offer_serviceID (service_licenseID), KEY IDX_ID_SERVICE (learning_project_pupil_offerID,service_licenseID), CONSTRAINT FK_t_pupils_offers_services_lppoID FOREIGN KEY (learning_project_pupil_offerID) REFERENCES j_learning_projects_pupils_offers (learning_project_pupil_offerID) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT FK_t_pupils_offers_services_slID FOREIGN KEY (service_licenseID) REFERENCES t_services_licenses (service_licenseID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS j_learning_projects_pupils_offers; CREATE TABLE j_learning_projects_pupils_offers ( learning_project_pupil_offerID varchar(36) NOT NULL, learning_project_pupilID bigint(20) unsigned NOT NULL, offerID varchar(36) NOT NULL, start_date datetime NOT NULL, end_date datetime NOT NULL, deleted tinyint(3) unsigned NOT NULL DEFAULT '0', interruption_count int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (learning_project_pupil_offerID), KEY FK_j_learning_projects_pupils_offers_projID (learning_project_pupilID), KEY FK_j_learning_projects_pupils_offers_offerID (offerID), KEY IDX_start_date (start_date) USING BTREE, KEY IDX_end_date (end_date) USING BTREE, KEY IDX_deleted (deleted), CONSTRAINT FK_LPPO_LP FOREIGN KEY (learning_project_pupilID) REFERENCES j_learning_projects_pupils (learning_project_pupilID) ON DELETE CASCADE, CONSTRAINT FK_LPPO_O FOREIGN KEY (offerID) REFERENCES t_offers (offerID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS j_learning_projects_pupils; CREATE TABLE j_learning_projects_pupils ( learning_project_pupilID bigint(20) unsigned NOT NULL AUTO_INCREMENT, user_actorID varchar(36) NOT NULL, active tinyint(3) unsigned DEFAULT '1' COMMENT '1', disciplineID varchar(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, deleted tinyint(3) unsigned NOT NULL DEFAULT '0', active_work_reminder tinyint(3) unsigned NOT NULL DEFAULT '1', enable_change_of_reminder_settings tinyint(3) unsigned NOT NULL DEFAULT '1', enable_objective_redefinition tinyint(3) unsigned NOT NULL DEFAULT '1', enable_sequence_removing tinyint(3) unsigned NOT NULL DEFAULT '1', send_detailed_report tinyint(3) unsigned NOT NULL DEFAULT '1', send_learning_path tinyint(3) unsigned NOT NULL DEFAULT '1', send_test_result tinyint(3) unsigned NOT NULL DEFAULT '1', weekly_availability_time bigint(20) unsigned NOT NULL DEFAULT '0', working_reminder_periodicityID tinyint(3) unsigned NOT NULL, working_reminder_periodicity_value bigint(20) unsigned NOT NULL DEFAULT '0', registration_date datetime NOT NULL, current_free_mode_learning_levelID bigint(20) unsigned DEFAULT NULL, enable_change_of_difficulty_settings tinyint(3) unsigned NOT NULL DEFAULT '0', was_activated tinyint(3) unsigned NOT NULL DEFAULT '0', was_connected tinyint(3) unsigned NOT NULL DEFAULT '0', snapshot_running tinyint(3) unsigned NOT NULL DEFAULT '0', visible tinyint(3) unsigned NOT NULL DEFAULT '1', tempID varchar(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, learning_project_pupilID_for_filter_join varchar(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, objectives_expected_time_on_formation smallint(5) unsigned NOT NULL DEFAULT '0', objectives_expected_time_enabled tinyint(3) unsigned NOT NULL DEFAULT '0', cecr_level tinyint(3) unsigned NOT NULL DEFAULT '1', enable_show_popup_phone_lesson_and_live_tutoring TINYINT(3) UNSIGNED NOT NULL DEFAULT '1', PRIMARY KEY (learning_project_pupilID), KEY user_actorID (user_actorID), KEY FK_j_learning_projects_pupils_level (current_free_mode_learning_levelID), KEY IDX_statuses (was_activated,was_connected,deleted,active), KEY IDX_LPP_TEMPID (tempID), KEY IDX_LPP_TEMPFILTERID (learning_project_pupilID_for_filter_join), KEY IDX_DAVA (deleted,active,visible,active_work_reminder), KEY IDX_discipline_v (disciplineID,visible) USING BTREE, CONSTRAINT FK_j_learning_projects_pupils_discipline FOREIGN KEY (disciplineID) REFERENCES p_disciplines (disciplineID), CONSTRAINT FK_j_learning_projects_pupils_j_users_actors FOREIGN KEY (user_actorID) REFERENCES j_users_actors (user_actorID), CONSTRAINT FK_j_learning_projects_pupils_level FOREIGN KEY (current_free_mode_learning_levelID) REFERENCES p_learning_levels (learning_levelID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS j_learning_projects_pupils_offers_tracking; CREATE TABLE j_learning_projects_pupils_offers_tracking ( learning_project_pupil_offer_trackingID bigint(20) unsigned NOT NULL AUTO_INCREMENT, pupil_offer_serviceID varchar(36) NOT NULL, license_mode_typeID int(10) unsigned NOT NULL, license_mode_value bigint(20) unsigned NOT NULL DEFAULT '0', effective_consumption_value bigint(20) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (learning_project_pupil_offer_trackingID), KEY FK_j_learning_projects_pupils_offers_tracking_posID (pupil_offer_serviceID), CONSTRAINT FK_j_learning_projects_pupils_offers_tracking_posID FOREIGN KEY (pupil_offer_serviceID) REFERENCES t_pupils_offers_services (pupil_offer_serviceID) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS t_filters_items; CREATE TABLE t_filters_items ( filterID varchar(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, itemID varchar(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, row_order bigint(20) unsigned NOT NULL DEFAULT '0', selected tinyint(3) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (filterID,itemID), CONSTRAINT FK_t_filters_items_ID FOREIGN KEY (filterID) REFERENCES t_filters (filterID) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
分类:
数据库 点滴记录
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2012-08-14 ADPlus
2012-08-14 WPF换肤之八:创建3D浏览效果
2011-08-14 匿名方法的一些使用方法备忘
2011-08-14 Log4Net使用方法小记
2010-08-14 22个所见即所得在线 Web 编辑器