2016-11-29 33 views
-2

なぜこのエラー??オブジェクトまたは列名が存在しないか、empty.emptyエイリアス名

SELECT (CASE 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'NCELL' THEN 'Paypoint' 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'UTLP' THEN 'Paypointutl' 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'SIMTV' THEN 'Paypointsimtv' 
      ELSE BalanceTransfer.mobile_operator_desc 
     END), 
     ISNULL(CONVERT(VARCHAR, DT_date, 101), '''') Txndate, 
     COUNT(*)          txn, 
     reseller_agent.reseller_id, 
     reseller_agent.userName, 
     SUM(ISNULL(selling_price, 0.00))    amount, 
     SUM(ISNULL(amount, 0.00))     facevalue 
INTO #tempRoutewise 
FROM BalanceTransfer WITH (NOLOCK) 
     JOIN dbo.money_transfer WITH (NOLOCK) 
     ON BalanceTransfer.mobile_operator = money_transfer.Mobile_Operator 
     LEFT OUTER JOIN reseller_agent WITH (NOLOCK) 
        ON BalanceTransfer.Branch_Id = reseller_agent.reseller_id 
WHERE 1 = 1 
     AND Status <> 'confirming' 
     AND BalanceTransfer.mobile_operator IN(1, 2, 6, 14, 15) 
     AND ISNULL(money_transfer.IsUtility, 'n') = 'y' 
     AND money_transfer.Mobile_Operator IS NOT NULL 
GROUP BY BalanceTransfer.mobile_operator_desc, 
      money_transfer.MoneyTransfer, 
      reseller_agent.reseller_id, 
      reseller_agent.userName, 
      ISNULL(CONVERT(VARCHAR, DT_date, 101), '''') 

SELECT * 
FROM #tempRoutewise 
+1

クエリから返される最初の列の名前は何ですか? –

答えて

0

マーティンさんがコメントで指摘したように、最初の列には名前がありません。テーブルを作成しようとしています。明らかに、その表内のすべての列は名前を持つ必要があり、名前は選択した列の名前です。試してみる:

SELECT CASE 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'NCELL' THEN 'Paypoint' 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'UTLP' THEN 'Paypointutl' 
      WHEN BalanceTransfer.mobile_operator_desc = 'Paypoint' 
       AND money_transfer.MoneyTransfer = 'SIMTV' THEN 'Paypointsimtv' 
      ELSE BalanceTransfer.mobile_operator_desc 
     END AS mobile_operator_desc , 
     ISNULL(CONVERT(VARCHAR, DT_date, 101), '''') Txndate, 
     COUNT(*)          txn, 
     reseller_agent.reseller_id, 
     reseller_agent.userName, 
     SUM(ISNULL(selling_price, 0.00))    amount, 
     SUM(ISNULL(amount, 0.00))     facevalue 

それは動作するはずです。

関連する問題