나는 세 개의 테이블을 가입하고 XML 파일의 값을 반환받을 INNER을 시도하고 있지만, 두 번째 또는 세 번째 테이블에서있는 값이 반환됩니다별칭 내부는 유효하지 않은 리드를 결합 열 이름
코드입니다 :메시지로 207, 수준 16, 상태 1, 프로 시저 PROC_Generate_XML_AdForm, 줄 18 'VPrSKzNazev'열 이름이 잘못되었습니다.
메시지 레벨 16, 상태 1, 프로 시저 PROC_Generate_XML_AdForm, 라인 20 'VPrURLCZ1'열 이름이 잘못되었습니다.
메시지 레벨 16, 상태 1, 프로 시저 PROC_Generate_XML_AdForm, 라인 22 'VPrSlevaCZ1'열이 올바르지 않습니다. 여기
SELECT @xmlVar = (
SELECT t1.IDS AS 'product_id'
,t1.VPrSKzNazev AS 'product_name'
,t1.VPrPodkolekce AS 'product_category_id'
,'http://www.foo.com/' + t1.VPrURLCZ1 AS 'product_deeplink'
,'http://www.foo.com/media-photo/' + t1.IDS + '/370/370.jpg' AS 'product_image'
,CAST(ROUND((100 - t1.ProdejDPH)/100 * t1.VPrSlevaCZ1, 0) AS INT) AS 'product_price'
FROM SKz AS t1
INNER JOIN VTbProdDalsi
ON t1.IDS = VTbProdDalsi.VPrSKzIDS
INNER JOIN VTbProdDalsi2
ON t1.IDS = VTbProdDalsi2.VPrSKzIDS
WHERE t1.VPrIsMain = 1
AND (
(
SELECT SUM(SKz.StavZ - SKz.ObjedP)
FROM SKz
WHERE IDS = t1.IDS
) > 0
OR (
SELECT SUM(ISNULL(SKz.VPrDodPocet, 0) - SKz.ObjedP)
FROM SKz
WHERE IDS = t1.IDS
) > 0
)
FOR XML PATH('product')
,ROOT('products')
)
나는 그것이 아마 이미 어딘가에 대답 있다는 생각을하지만, 내가 SQL에 새로 온 이후, 나는 대답을 적용하는 방법을 모르겠어요.
저는 Microsoft SQL Server Management Studio (SQL Server 2008 R2)에 있습니다.
답장을 보내 주셔서 감사합니다. 문제는 바로 여기에 거주하는 것처럼
테이블 'SKz'의 구조는 무엇입니까 –