Database schema:

CREATE TABLE categories (
	podcast_id TEXT NOT NULL -- example: ['a00043d34e734b09246d17dc5d56f63c', 'a00018b54eb342567c94dacfb2a3e504'],
	category TEXT NOT NULL -- example: ['arts-performing-arts', 'arts'],
	PRIMARY KEY (podcast_id, category), 
	CONSTRAINT fk_categories_podcasts FOREIGN KEY(podcast_id) REFERENCES podcasts (podcast_id)
)


CREATE TABLE podcasts (
	podcast_id TEXT -- example: ['a00043d34e734b09246d17dc5d56f63c', 'a00018b54eb342567c94dacfb2a3e504'],
	itunes_id INTEGER NOT NULL -- example: ['158973461', '1313466221'],
	slug TEXT NOT NULL -- example: ['cornerstone-baptist-church-of-orlando', 'scaling-global'],
	itunes_url TEXT NOT NULL -- example: ['https://podcasts.apple.com/us/podcast/scaling-glob', 'https://podcasts.apple.com/us/podcast/cornerstone-'],
	title TEXT NOT NULL -- example: ['Cornerstone Baptist Church of Orlando', 'Scaling Global'],
	PRIMARY KEY (podcast_id)
)


CREATE TABLE reviews (
	podcast_id TEXT NOT NULL -- example: ['ad4f2bf69c72b8db75978423c25f379e', 'c61aa81c9b929a66f0c1db6cbe5d8548'],
	title TEXT NOT NULL -- example: ['Must listen for anyone interested in the arts!!!', 'really interesting!'],
	content TEXT NOT NULL -- example: ['Super excited to see this podcast grow. So many fu', 'Thanks for providing these insights.  Really enjoy'],
	rating INTEGER NOT NULL -- example: ['5', '1'],
	author_id TEXT NOT NULL -- example: ['F6BF5472689BD12', 'F7E5A318989779D'],
	created_at TEXT NOT NULL, 
	CONSTRAINT fk_reviews_podcasts FOREIGN KEY(podcast_id) REFERENCES podcasts (podcast_id)
)


CREATE TABLE runs (
	run_at TEXT NOT NULL -- example: ['2021-05-10 02:53:00', '2021-06-06 21:34:36'],
	max_rowid INTEGER NOT NULL -- example: ['3300773', '3266481'],
	reviews_added INTEGER NOT NULL -- example: ['1215223', '13139']
)

Question: Name all the podcast title and its category with average rating of more than 3.0.
Evidence: average rating of more than 3.0 refers to avg(rating) > 3.0

SQL:
SELECT T2.title, T1.category FROM categories AS T1 INNER JOIN podcasts AS T2 ON T2.podcast_id = T1.podcast_id INNER JOIN reviews AS T3 ON T3.podcast_id = T2.podcast_id GROUP BY T3.podcast_id HAVING AVG(T3.rating) > 3