Вариант использования: У нас есть вложенные запросы, и в наших таблицах содержится от 10 до 20 миллионов строк.Здесь мы намерены уменьшить время процессора запроса с помощью интеллектуального фильтра
. Мне нравится фильтровать мои столбцы в pd.read_sql по имени другого столбца фрейма данных.Это возможно?
Шаг 1: фрейм данных df1 age1 и age3 - мои будущие столбцы фильтра для pd.read_sql
raw_data1 = {'age1': [23,45,21],'age2': [10,20,50], 'age3':['forty','fortyone','fortyfour']}
df1 = pd.DataFrame(raw_data1, columns = ['age1','age2','age3'])
df1
Step2: Мне нравится брать age1 изВыше df1 dataframe хотите использовать ниже pd.read_sql, как показано ниже, чтобы получить item1 dataframe
item1 = pd.read_sql("""
SELECT * from [dbo].[ITEM]
where item_age1 = df1.age1
""", conn)
Шаг 3: Мне нравится брать age3 сверху df1 dataframe, который хотите использовать ниже pd.read_sql, как показано ниже, чтобы получить item2датафрейм
item2 = pd.read_sql("""
SELECT * from [dbo].[ITEM]
where item_age3 = df1.age3
""", conn)