问题描述
当我尝试使用下面的Looker中的SQL代码时,出现以下错误。 Amazon Redshift数据库在运行此查询时遇到错误。错误:找不到从“未知”到文本的转换功能。有人可以帮我理解SQL代码中的错误吗?当我在SQL运行程序中运行SQL代码时,它运行良好。谢谢。
WITH dedupe_lurcheck AS (WITH Lur_Data_Pull AS (SELECT *
FROM
yld.vlurcheck /* Possible Name Change */
WHERE dates_broadcast_weeks_key <= CAST(DATE_PART(y,GETDATE()) || DATE_PART(w,GETDATE()) AS INT) + 13 /* Syntax Update*/
),Dupes_in_lur_spot_data AS (
SELECT
tbsystemid,contractid,origcontractlineid,linegrp,bookendflag,corpsaleszonename,/*Added on 9/23/2020*/
count(*)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(*) > 1
),Dupes_in_lur_spot_data_rcrate AS (
SELECT
tbsystemid,count(distinct cid) --changed the original query to look at distinct card ids instead of a count(*),because even duplicate rate cards can have the same rate,seems to work ok?)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct cid) > 1
),Dupes_in_lur_spot_data_state AS (
SELECT
tbsystemid,count(distinct state) --changed the original query to look at distinct states instead of a count(*),still not producing the results i'd expect)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct state) > 1
),Dupes_in_lur_spot_data_airdaytimekey AS (
SELECT
tbsystemid,count(distinct airdaytimekey)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct airdaytimekey) > 1
),Dupes_in_lur_spot_data_airdatekey AS (
SELECT
tbsystemid,count(distinct airdatekey)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct airdatekey) > 1
),Dupes_in_lur_spot_data_programname AS (
SELECT
tbsystemid,count(distinct programname)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct programname) > 1
),Dupes_in_lur_spot_data_aename AS (
SELECT
tbsystemid,count(distinct corpaename)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct corpaename) > 1
),Dupes_in_lur_spot_data_dsmove AS (
SELECT
tbsystemid,count(distinct scheduleoptions)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct scheduleoptions) > 1
),Dupes_in_lur_spot_data_bookend AS (
SELECT
tbsystemid,count(distinct duration)
FROM Lur_Data_Pull
GROUP BY
tbsystemid,corpsaleszonename
HAVING count(distinct duration) > 1
),lur_spot_data_dupes_flag AS (
SELECT *,'1' AS Duplicated_Spot
FROM Dupes_in_lur_spot_data
),lur_spot_data_dupes_flag_rcrate AS (
SELECT *,'1' AS Duplicated_Spot_Rcrate
FROM Dupes_in_lur_spot_data_rcrate
),lur_spot_data_dupes_flag_state AS (
SELECT *,'1' AS Duplicated_Spot_state
FROM Dupes_in_lur_spot_data_state
),lur_spot_data_dupes_flag_airdaytimekey AS (
SELECT *,'1' AS Duplicated_Spot_airdaytimekey
FROM Dupes_in_lur_spot_data_airdaytimekey
),lur_spot_data_dupes_flag_airdatekey AS (
SELECT *,'1' AS Duplicated_Spot_airdatekey
FROM Dupes_in_lur_spot_data_airdatekey
),lur_spot_data_dupes_flag_programname AS (
SELECT *,'1' AS Duplicated_Spot_programname
FROM Dupes_in_lur_spot_data_programname
),lur_spot_data_dupes_flag_aename AS (
SELECT *,'1' AS Duplicated_Spot_aename
FROM Dupes_in_lur_spot_data_aename
),lur_spot_data_dupes_flag_dsmove AS (
SELECT *,'1' AS Duplicated_Spot_dsmove
FROM Dupes_in_lur_spot_data_dsmove
),lur_spot_data_dupes_flag_bookend AS (
SELECT *,'1' AS Duplicated_Spot_bookend
FROM Dupes_in_lur_spot_data_bookend
)
SELECT
T1.*,T2.Duplicated_Spot,T3.Duplicated_Spot_Rcrate,T4.Duplicated_Spot_state,T5.Duplicated_Spot_airdaytimekey,T6.Duplicated_Spot_airdatekey,T7.Duplicated_Spot_programname,T8.Duplicated_Spot_aename,T9.Duplicated_Spot_dsmove,T10.Duplicated_Spot_bookend
FROM Lur_Data_Pull T1 LEFT OUTER JOIN lur_spot_data_dupes_flag T2 ON
T1.tbsystemid = T2.tbsystemid
AND T1.contractid = T2.contractid
AND T1.origcontractlineid = T2.origcontractlineid
AND T1.linegrp = T2.linegrp
AND T1.bookendflag = T2.bookendflag
AND T1.corpsaleszonename = T2.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_rcrate T3 ON
T1.tbsystemid = T3.tbsystemid
AND T1.contractid = T3.contractid
AND T1.origcontractlineid = T3.origcontractlineid
AND T1.linegrp = T3.linegrp
AND T1.bookendflag = T3.bookendflag
AND T1.corpsaleszonename = T3.corpsaleszonename
--AND T1.rcrate = T3.rcrate --commented out
LEFT OUTER JOIN lur_spot_data_dupes_flag_state T4 ON
T1.tbsystemid = T4.tbsystemid
AND T1.contractid = T4.contractid
AND T1.origcontractlineid = T4.origcontractlineid
AND T1.linegrp = T4.linegrp
AND T1.bookendflag = T4.bookendflag
AND T1.corpsaleszonename = T4.corpsaleszonename
--AND T1.state = T4.state --commented out
LEFT OUTER JOIN lur_spot_data_dupes_flag_airdaytimekey T5 ON
T1.tbsystemid = T5.tbsystemid
AND T1.contractid = T5.contractid
AND T1.origcontractlineid = T5.origcontractlineid
AND T1.linegrp = T5.linegrp
AND T1.bookendflag = T5.bookendflag
AND T1.corpsaleszonename = T5.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_airdatekey T6 ON
T1.tbsystemid = T6.tbsystemid
AND T1.contractid = T6.contractid
AND T1.origcontractlineid = T6.origcontractlineid
AND T1.linegrp = T6.linegrp
AND T1.bookendflag = T6.bookendflag
AND T1.corpsaleszonename = T6.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_programname T7 ON
T1.tbsystemid = T7.tbsystemid
AND T1.contractid = T7.contractid
AND T1.origcontractlineid = T7.origcontractlineid
AND T1.linegrp = T7.linegrp
AND T1.bookendflag = T7.bookendflag
AND T1.corpsaleszonename = T7.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_aename T8 ON
T1.tbsystemid = T8.tbsystemid
AND T1.contractid = T8.contractid
AND T1.origcontractlineid = T8.origcontractlineid
AND T1.linegrp = T8.linegrp
AND T1.bookendflag = T8.bookendflag
AND T1.corpsaleszonename = T8.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_dsmove T9 ON
T1.tbsystemid = T9.tbsystemid
AND T1.contractid = T9.contractid
AND T1.origcontractlineid = T9.origcontractlineid
AND T1.linegrp = T9.linegrp
AND T1.bookendflag = T9.bookendflag
AND T1.corpsaleszonename = T9.corpsaleszonename
LEFT OUTER JOIN lur_spot_data_dupes_flag_bookend T10 ON
T1.tbsystemid = T10.tbsystemid
AND T1.contractid = T10.contractid
AND T1.origcontractlineid = T10.origcontractlineid
AND T1.linegrp = T10.linegrp
AND T1.bookendflag = T10.bookendflag
AND T1.corpsaleszonename = T10.corpsaleszonename
ORDER BY
CAST(T1.tbsystemid AS INT),T1.contractid,T1.origcontractlineid,T1.linegrp,T1.bookendflag,T1.corpsaleszonename DESC
)
SELECT
dedupe_lurcheck.state AS "dedupe_lurcheck.state",dedupe_lurcheck.dates_broadcast_weeks_key AS "dedupe_lurcheck.dates_broadcast_weeks_key",dedupe_lurcheck.marketname AS "dedupe_lurcheck.marketname",dedupe_lurcheck.cardname AS "dedupe_lurcheck.cardname",dedupe_lurcheck.advertiser_name AS "dedupe_lurcheck.advertiser_name",dedupe_lurcheck.contractid AS "dedupe_lurcheck.contractid",dedupe_lurcheck.corpaename AS "dedupe_lurcheck.corpaename",dedupe_lurcheck.origcontractlineid AS "dedupe_lurcheck.origcontractlineid",dedupe_lurcheck.corpsaleszonename AS "dedupe_lurcheck.corpsaleszonename",dedupe_lurcheck.daypart AS "dedupe_lurcheck.daypart",dedupe_lurcheck.dowpattern AS "dedupe_lurcheck.dowpattern",dedupe_lurcheck.corpnetworkcode AS "dedupe_lurcheck.corpnetworkcode",dedupe_lurcheck.syscode AS "dedupe_lurcheck.syscode",dedupe_lurcheck.duration AS "dedupe_lurcheck.duration",dedupe_lurcheck.linegrp AS "dedupe_lurcheck.linegrp",dedupe_lurcheck.grossdollars AS "dedupe_lurcheck.grossdollars",dedupe_lurcheck.adj_rate AS "dedupe_lurcheck.adj_rate",dedupe_lurcheck.rcrate AS "dedupe_lurcheck.rcrate",dedupe_lurcheck.rate_var AS "dedupe_lurcheck.rate_var",dedupe_lurcheck.prioritycode AS "dedupe_lurcheck.prioritycode",dedupe_lurcheck.duplicated_spot AS "dedupe_lurcheck.duplicated_spot",dedupe_lurcheck.duplicated_spot_aename AS "dedupe_lurcheck.duplicated_spot_aename",dedupe_lurcheck.duplicated_spot_airdatekey AS "dedupe_lurcheck.duplicated_spot_airdatekey",dedupe_lurcheck.duplicated_spot_airdaytimekey AS "dedupe_lurcheck.duplicated_spot_airdaytimekey",dedupe_lurcheck.duplicated_spot_bookend AS "dedupe_lurcheck.duplicated_spot_bookend",dedupe_lurcheck.duplicated_spot_dsmove AS "dedupe_lurcheck.duplicated_spot_dsmove",dedupe_lurcheck.duplicated_spot_programname AS "dedupe_lurcheck.duplicated_spot_programname",dedupe_lurcheck.duplicated_spot_rcrate AS "dedupe_lurcheck.duplicated_spot_rcrate",dedupe_lurcheck.duplicated_spot_state AS "dedupe_lurcheck.duplicated_spot_state"
FROM dedupe_lurcheck
GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
ORDER BY 1
LIMIT 500
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)