From 1262bda374d5d4217d7c2bb4dfd7bb330fc6dfa6 Mon Sep 17 00:00:00 2001 From: Max O'Cull Date: Sat, 20 Apr 2019 22:03:59 -0400 Subject: [PATCH] Fix aggregate and string --- p4/src/main/java/cs448/Project4.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/p4/src/main/java/cs448/Project4.java b/p4/src/main/java/cs448/Project4.java index 9166552..2e78af0 100644 --- a/p4/src/main/java/cs448/Project4.java +++ b/p4/src/main/java/cs448/Project4.java @@ -133,7 +133,7 @@ public class Project4 { ratingDF.createOrReplaceTempView("Rating"); // Compute the result. - Dataset resultDF = spark.sql("SELECT DISTINCT m.movieId FROM Movie m, Rating r, User u WHERE m.movieId = r.movieId AND r.userId = u.userId AND u.occupation = " + + Dataset resultDF = spark.sql("SELECT DISTINCT STR(m.movieId) FROM Movie m, Rating r, User u WHERE m.movieId = r.movieId AND r.userId = u.userId AND u.occupation = " + conf.q3Occupation + " AND r.rating = " + conf.q3Rating); resultDF.show(); resultDF.write().text(CS448Utils.resolveUri(conf.outPath, "query-3")); @@ -172,8 +172,10 @@ public class Project4 { ratingDF.createOrReplaceTempView("Rating"); // Compute the result. - Dataset resultDF = spark.sql("SELECT m.title, AVG(r.rating) FROM Movie m, Rating r, User u WHERE m.movieId = r.movieId AND r.userId = u.userId AND u.age = " + - conf.q4Age); + // "SELECT m.title, r.average FROM Movie m, (SELECT AVG(r.rating) as average FROM Rating r, User u WHERE r.userId = u.userId AND u.age = " + conf.q4Age + ") r, User u WHERE m.movieId = r.movieId AND r.userId = u.userId AND u.age = " + + // conf.q4Age); + Dataset resultDF = spark.sql( + "SELECT m.title, AVG(r.rating) FROM Movie m, Rating r, User u WHERE m.movieId = r.movieId AND r.userId = u.userId AND u.age = " + conf.q4Age + " GROUP BY r.movieId"); resultDF.show(); resultDF.write().text(CS448Utils.resolveUri(conf.outPath, "query-4"));