不合法的识别符。它是concat代码吗?

时间:2014-04-21 07:28:10

标签: sql oracle

我一直收到错误"标识符无效"我知道列是对的......有什么想法吗?

另外,我知道concat编码有点混乱。有人为它提供了这个代码:

,mp_asin.PARENT_ASIN_NAME || ', ' || mp_asin.COLOR_NAME as TEEN

哪个更好?

SELECT
   mp_asin.CATEGORY_CODE AS Category_id 
   ,mp_asin.SUBCATEGORY_CODE AS SUBCATEGORY
   ,mp_asin.PARENT_ASIN
   ,mp_asin.PARENT_ASIN_NAME 
   ,mp_asin.COLOR_NAME AS Color_Name 
   ,mp_asin.PRODUCT_SITE_LAUNCH_DAY AS PSLD 
   ,CONCAT(mp_asin.PARENT_ASIN_NAME, CONCAT(',', CONCAT(' ',mp_asin.COLOR_NAME))) AS Teen 
   ,mp.BRAND_CODE AS Brand_Code 
   ,mp.REPLENISHMENT_CODE as REPLEN_CODE 
   ,mp.REPLENISHMENT_CATEGORY_ID AS Replen_TIER
   ,mp.ASIN as ASIN
   , MIN(mp.REPLENISHMENT_CODE) OVER (PARTITION BY (CONCAT(mp_asin.PARENT_ASIN_NAME, CONCAT(',', CONCAT(' ',mp_asin.COLOR_NAME))))) as MIN_TEEN_RC
   , MAX(mp.REPLENISHMENT_CODE) OVER (PARTITION BY (CONCAT(mp_asin.PARENT_ASIN_NAME, CONCAT(',', CONCAT(' ',mp_asin.COLOR_NAME))))) as MAX_TEEN_RC

FROM
D_MP_ASINS mp

WHERE
MIN_TEEN_RC <> MAX_TEEN_RC
AND mp.PRODUCT_CATEGORY =('30905500') 
AND mp_asin.SUBCATEGORY_CODE =('30905560')
AND mp.REGION_ID = 1
AND mp.MARKETPLACE_ID = 1
AND mp.GL_PRODUCT_GROUP = 309

Group by
mp_asin.CATEGORY_CODE
,mp_asin.SUBCATEGORY_CODE 
,mp_asin.PARENT_ASIN
,mp_asin.PARENT_ASIN_NAME
,mp_asin.COLOR_NAME
,mp_asin.PRODUCT_SITE_LAUNCH_DAY
,CONCAT(mp_asin.PARENT_ASIN_NAME, CONCAT(',', CONCAT(' ',mp_asin.COLOR_NAME)))
,mp.BRAND_CODE
,mp.REPLENISHMENT_CODE
,mp.REPLENISHMENT_CATEGORY_ID
,mp.ASIN

1 个答案:

答案 0 :(得分:2)

我想你错过了别名 mp_asin 的表格。我在FROM子句中只看到一个表。

这更好,更具可读性:

mp_asin.PARENT_ASIN_NAME || ', ' || mp_asin.COLOR_NAME as TEEN

相关问题