Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save onelittlenightmusic/1435b81e26d49ecf976171707aac9ea4 to your computer and use it in GitHub Desktop.
Save onelittlenightmusic/1435b81e26d49ecf976171707aac9ea4 to your computer and use it in GitHub Desktop.
sql.py
class SqlMetadata:
def __init__(self, name, sql):
self.name = name
self.sql = sql
def getSql(self):
return self.sql+' as '+self.name
sqlarray = [SqlMetadata("score", "json_array_elements(restaurant_from_df.grades_json::json)->'score'"),
SqlMetadata("grade", "json_array_elements(restaurant_from_df.grades_json::json)->'grade'"),
SqlMetadata("date", "json_array_elements(restaurant_from_df.grades_json::json)->'date'"),
]
sqlcreateview = '''
create or replace view grade as
select restaurant_id,
%s
from restaurant_from_df limit 100;
'''%(', '.join(map(lambda x: x.getSql(), sqlarray)))
%sql $sqlcreateview
%sql select * from grade;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment