Coverage for mindsdb / api / executor / sql_query / steps / sql_steps.py: 40%
21 statements
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-21 00:36 +0000
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-21 00:36 +0000
1import pandas as pd
3from mindsdb.api.executor.planner.steps import (
4 LimitOffsetStep,
5 DataStep,
6)
8from mindsdb.api.executor.sql_query.result_set import ResultSet
10from .base import BaseStepCall
13class LimitOffsetStepCall(BaseStepCall):
15 bind = LimitOffsetStep
17 def call(self, step):
18 step_data = self.steps_data[step.dataframe.step_num]
20 df = step_data.get_raw_df()
22 step_data2 = ResultSet(columns=list(step_data.columns))
24 if isinstance(step.offset, int):
25 df = df[step.offset:]
26 if isinstance(step.limit, int):
27 df = df[:step.limit]
29 step_data2.add_raw_df(df)
31 return step_data2
34class DataStepCall(BaseStepCall):
36 bind = DataStep
38 def call(self, step):
39 # create resultset
40 df = pd.DataFrame(step.data)
41 return ResultSet.from_df(df, database='', table_name='')