try to get string_agg to work in recommendation job by adding a cast, take 3, a=chris
try to get string_agg to work in recommendation job by adding a cast, take 3, a=chris
diff --git a/src/library/media_jobs/RecommendationJob.php b/src/library/media_jobs/RecommendationJob.php
index 6addac561..95c900ec0 100644
--- a/src/library/media_jobs/RecommendationJob.php
+++ b/src/library/media_jobs/RecommendationJob.php
@@ -488,7 +488,7 @@ class RecommendationJob extends MediaJob
" ((UPDATE_PERIOD = ? AND UPDATE_TIMESTAMP = ?) OR" .
" (UPDATE_PERIOD = ?))";
$impression_sql = "SELECT USER_ID, ".
- "$db_list_function(CAST(ITEM_ID AS STRING), ',') AS " .
+ "$db_list_function(CAST(ITEM_ID AS VARCHAR), ',') AS " .
"ITEM_IDS FROM ITEM_IMPRESSION_SUMMARY WHERE $condition " .
"GROUP BY USER_ID";
$results = $db->execute($impression_sql,
@@ -542,7 +542,7 @@ class RecommendationJob extends MediaJob
$db_list_function = in_array($db->to_upper_dbms, ["SQLITE3", "MYSQL"]) ?
"GROUP_CONCAT" : "STRING_AGG";
$user_group_sql = "SELECT USER_ID, $db_list_function(" .
- "CAST(GROUP_ID AS STRING), ',') " .
+ "CAST(GROUP_ID AS VARCHAR), ',') " .
"AS GROUP_IDS FROM USER_GROUP GROUP BY USER_ID";
$results = $db->execute($user_group_sql);
$user_groups = [];
@@ -695,7 +695,7 @@ class RecommendationJob extends MediaJob
" ((UPDATE_PERIOD = ? AND UPDATE_TIMESTAMP = ?) OR" .
" (UPDATE_PERIOD = ?))";
$impression_sql = "SELECT USER_ID, $db_list_function( ".
- "CAST(ITEM_ID AS STRING), ',') AS " .
+ "CAST(ITEM_ID AS VARCHAR), ',') AS " .
"ITEM_IDS FROM ITEM_IMPRESSION_SUMMARY WHERE $condition " .
"GROUP BY USER_ID";
$results = $db->execute($impression_sql,
@@ -1166,7 +1166,7 @@ class RecommendationJob extends MediaJob
" ((UPDATE_PERIOD = ? AND UPDATE_TIMESTAMP = ?) OR" .
" (UPDATE_PERIOD = ?))";
$impression_sql = "SELECT USER_ID, $db_list_function( " .
- "CAST(ITEM_ID AS STRING), ',') AS " .
+ "CAST(ITEM_ID AS VARCHAR), ',') AS " .
"ITEM_IDS FROM ITEM_IMPRESSION_SUMMARY WHERE $condition " .
"GROUP BY USER_ID";
$results = $db->execute($impression_sql,