1234567891011121314151617181920212223242526 |
- # -*- coding: utf-8 -*-
- """
- @author: yq
- @time: 2024/10/31
- @desc: sql直接统计指标直出
- """
- import pandas as pd
- from data import DataLoaderBase
- from entitys import MetricFucEntity
- from .metric_base import MetricBase
- class MetricBySqlGeneral(MetricBase):
- def __init__(self, sql: str, *args, **kwargs):
- self._sql = sql
- def validate_data(self):
- pass
- def load_data(self, data_loader: DataLoaderBase, *args, **kwargs) -> pd.DataFrame:
- return data_loader.get_data(self._sql)
- def calculate(self, *args, **kwargs) -> MetricFucEntity:
- return MetricFucEntity(table=self.load_data(*args, **kwargs))
|