SELECT ad.dataset_id, ad.dataset_uuid, ad.dataset_name, ad.description, ad.data_type, ad.data_source, ad.input_path, ad.output_path, ad.annotation_status, ad.is_public, ad.del_flag, ad.create_by, ad.create_time, ad.update_by, ad.update_time, ad.input_id, ad.output_id, (SELECT COUNT(*) FROM ai_dataset_file_map adfm WHERE adfm.dataset_id = ad.dataset_id) AS annotatedCount, (SELECT COUNT(*) FROM ai_dataset_file_map adfm WHERE adfm.dataset_id = ad.dataset_id AND adfm.is_annotated = '0') AS notAnnotatedCount FROM ai_dataset ad insert into ai_dataset ( dataset_uuid, dataset_name, description, data_type, data_source, input_path, input_id, output_path,output_id, create_by, update_by ) values ( #{datasetUuid}, #{datasetName}, #{datasetDesc}, #{dataType},#{dataSource}, #{inputPath},#{inputId}, #{outputPath},#{outputId}, #{createBy}, #{updateBy} ) update ai_dataset dataset_name = #{datasetName}, description = #{datasetDesc}, data_type = #{dataType}, data_source = #{dataSource}, input_path = #{inputPath}, output_path = #{outputPath}, annotation_status = #{annotationStatus}, is_public = #{isPublic}, is_annotated = #{isAnnotated}, update_by = #{updateBy}, update_time = #{updateTime}, where dataset_id = #{datasetId} update ai_dataset set del_flag = '1' where dataset_id = #{datasetId} update ai_dataset set del_flag = '1' where dataset_id in #{datasetId} delete from ai_dataset_file_map where dataset_id = #{datasetId} AND file_id in #{fileId} update ai_dataset set is_public = #{isPublic}, update_time = sysdate() where dataset_id = #{datasetId} update ai_dataset set annotation_status = #{annotationStatus}, update_time = sysdate() where dataset_id = #{datasetId}