def METHOD_NAME(glue_database, glue_table, path):
    from pandas.testing import assert_frame_equal
    df1 = pd.DataFrame({"c0": [0], "c1": ["foo"], "c2": ["0"]})
    df2 = pd.DataFrame({"c0": [1], "c1": ["foo"], "c2": ["1"]})
    df3 = pd.DataFrame({"c0": [2], "c1": ["boo"], "c2": ["2"]})
    df4 = pd.DataFrame({"c0": [3], "c1": ["boo"], "c2": ["3"]})
    wr.s3.to_parquet(df=df1, path=f"{path}foo/0/file0.parquet")
    wr.s3.to_parquet(df=df2, path=f"{path}foo/1/file1.parquet")
    wr.s3.to_parquet(df=df3, path=f"{path}boo/2/file2.parquet")
    wr.s3.to_parquet(df=df4, path=f"{path}boo/3/file3.parquet")
    column_types, partitions_types = wr.catalog.extract_athena_types(df1)
    wr.catalog.create_parquet_table(
        database=glue_database,
        table=glue_table,
        path=path,
        columns_types=column_types,
        athena_partition_projection_settings={
            "projection_types": {"c1": "injected", "c2": "injected"},
            "projection_storage_location_template": f"{path}${{c1}}/${{c2}}",
        },
    )
    df5 = wr.athena.read_sql_query(f"SELECT * FROM {glue_table} WHERE c1='foo' AND c2='0'", glue_database)
    assert_frame_equal(
        to_pandas(df1),
        to_pandas(df5),
        check_dtype=False,
    )