[SQL] 두 테이블 사이의 SQL 동일한 단위는 1 개 셀에서 주문 번호를 필요로
SQL두 테이블 사이의 SQL 동일한 단위는 1 개 셀에서 주문 번호를 필요로
나는이 개 테이블이 :
SELECT UnitId FROM dbo.tblUnits
SELECT UnitId, WorkOrderNumber FROM dbo.tblWorkOrders
나는 1 열 명으로 모니터에 다음 쉼표로 구분 된 모든 WorkOrders 모든 UnitId의 dbo.tblUnits에서 표시해야합니다.
그래서 여기에 몇 가지 샘플 데이터입니다 : dbo.tblUnits :
UnitId
123
156
178
dbo.tblWorkOrders
UnitId WorkOrderNumber
123 1
123 2
156 4
178 5
178 9
178 10
나는 그것을하지만이 보여주고 싶은 최종 결과에서 더 많은 데이터를 당겨하고 있기 때문에 tblUnits 테이블을 사용해야합니다 :
UnitId WorkOrderNumber
123 1,2
156 4
178 5,9,10
어떤 아이디어?
감사
해결법
-
==============================
1.
select UnitId, stuff((select ', ' + convert(varchar, WorkOrderNumber) from tblWorkOrders t2 where t1.UnitId = t2.UnitId for xml path('')), 1,2,'') WorkOrderNumbers from tblWorkOrders t1 group by UnitId
-
==============================
2.이 시도:
이 시도:
SELECT t1.UnitId, substring((SELECT ( ', ' + WorkOrderNumber) FROM tblWorkOrders t2 WHERE t1.UnitId= t2.UnitId ORDER BY UnitId FOR XML PATH( '' ) ), 3, 1000 ) as WorkOrderNumbers FROM tblWorkOrders as t1
-
==============================
3.바로이 주제에 대한이 좋은 기사를 발견했다. 그것은 당신에게이 작업을 수행하는 다른 방법을 보여줍니다.
바로이 주제에 대한이 좋은 기사를 발견했다. 그것은 당신에게이 작업을 수행하는 다른 방법을 보여줍니다.
http://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/
from https://stackoverflow.com/questions/5624592/sql-same-unit-between-two-tables-needs-order-numbers-in-1-cell by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] SQL에서 쿼리 이상한 결과를 생성 (0) | 2020.06.18 |
---|---|
[SQL] 매개 변수화 SQL 쿼리 (0) | 2020.06.18 |
[SQL] 에서의 SQL 서버 방법 피벗에 여러 컬럼 (0) | 2020.06.18 |
[SQL] 포스트 그레스 기능에 대한 사용자 정의 유형의 배열을 전달하는 방법 (0) | 2020.06.18 |
[SQL] SQL Server 2008의 절 '에서'테이블 이름에 대한 변수를 사용하여 (0) | 2020.06.18 |