Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 带联接的Oracle选择查询_Sql_Oracle - Fatal编程技术网

Sql 带联接的Oracle选择查询

Sql 带联接的Oracle选择查询,sql,oracle,Sql,Oracle,我有下面的Oracle SQL查询,它运行良好 Select Cage.BARCODE Cg, CagePen.BARCODE Pen FROM LOCATION_ENTITY CagePen LEFT JOIN LOCATION_ENTITY Cage ON SUBSTR(CagePen.FULL_LOCATION, -6)=Cage.BARCODE WHERE CagePen.FULL_LOCATION = 'Current' 我得到的回复是 CG PEN C

我有下面的Oracle SQL查询,它运行良好

 Select Cage.BARCODE Cg, CagePen.BARCODE Pen
 FROM LOCATION_ENTITY CagePen
 LEFT JOIN LOCATION_ENTITY Cage ON SUBSTR(CagePen.FULL_LOCATION, -6)=Cage.BARCODE
 WHERE CagePen.FULL_LOCATION = 'Current'
我得到的回复是

      CG    PEN
  CGE100    CP4265
  CGE100    CP4264
  CGE101    CP4266
  CGE101    CP4267
  CGE102    CP4268
  CGE102    CP4269
现在我试图巩固CG重复出现的反应

   CG            PEN
 CGE100   CP4265,   CP4264
 CGE101   CP4266,   CP4267
 CGE102   CP4268,   CP4269

此查询是否应该使用
agg()
您正在查找的
listag()


您正在查找
listagg()


可能的重复看起来问题不是关于连接,而是关于将结果聚合为逗号分隔格式。可能的重复看起来问题不是关于连接,而是关于将结果聚合为逗号分隔格式。
SELECT Cage.BARCODE as Cg, LISTAGG(CagePen.BARCODE, ',') WITHIN GROUP (ORDER BY CagePen.BARCODE) as Pens
FROM LOCATION_ENTITY CagePen LEFT JOIN
     LOCATION_ENTITY Cage 
     ON SUBSTR(CagePen.FULL_LOCATION, -6) = Cage.BARCODE
WHERE CagePen.FULL_LOCATION = 'Current'
GROUP BY Cage.BARCODE;