写了个存储过程,然后提示一大堆错误,不知道怎么改这几天急着用,SQL学的不是太明白。拜托了各位部分语句:
SELECT
(CASE 伝票区分
WHEN 'A1' THEN '受注伝票登録'
WHEN 'A8' THEN '受注伝票修正'
END),
依頼日,
依頼者,
(CASE SAP_連携承認状態.承認区分
WHEN '01' THEN '承認依頼'
WHEN '02' THEN '承認'
WHEN '03' THEN '却下'
WHEN '04' THEN '保留'
END),
処理日,
処理者,
コメント,
受注本体.[受注No(所属)] + '-' + 受注本体.[受注No(手配No)],
受注本体.[契約書No(所属)] + '-' + 受注本体.[契約書No(手配No)],
[R/3受注伝票タイプ],
[R/3受注伝票No],
ERP受注先,
ERP出荷先,
伝票日付,
[契約(予定)日],
[契約納期(完了日)],
支払条件,
契約区分,
下取区分,
延滞償金,
立会テスト,
伝票通貨,
[インコタームズ(1)],
[インコタームズ(2)],
仕向国,
受注本体.受注額 - SUM(受注明細.消費税),
SUM(消費税),
受注本体.受注額,
金利,
販売手数料,
SUM(TP),
セット,
受注明細.品目コード ,
受注明細.品目テキスト,
数量,
出荷予定日,
受注明細.受注額,
TP ,
消費税,
機種コード--商流
FROM SAP_連携承認状態
inner join 受注本体
on
(SAP_連携承認状態.集約_伝票管理ID = 受注本体.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
inner join 受注明細
on
(受注本体.受注伝票管理ID = 受注明細.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
错误提示:(基本上每个字段都有个一样的错误提示)
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
Column 'SAP_连携承认状态.伝票区分' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
Column 'SAP_连携承认状态.依頼者' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
SELECT
(CASE 伝票区分
WHEN 'A1' THEN '受注伝票登録'
WHEN 'A8' THEN '受注伝票修正'
END),
依頼日,
依頼者,
(CASE SAP_連携承認状態.承認区分
WHEN '01' THEN '承認依頼'
WHEN '02' THEN '承認'
WHEN '03' THEN '却下'
WHEN '04' THEN '保留'
END),
処理日,
処理者,
コメント,
受注本体.[受注No(所属)] + '-' + 受注本体.[受注No(手配No)],
受注本体.[契約書No(所属)] + '-' + 受注本体.[契約書No(手配No)],
[R/3受注伝票タイプ],
[R/3受注伝票No],
ERP受注先,
ERP出荷先,
伝票日付,
[契約(予定)日],
[契約納期(完了日)],
支払条件,
契約区分,
下取区分,
延滞償金,
立会テスト,
伝票通貨,
[インコタームズ(1)],
[インコタームズ(2)],
仕向国,
受注本体.受注額 - SUM(受注明細.消費税),
SUM(消費税),
受注本体.受注額,
金利,
販売手数料,
SUM(TP),
セット,
受注明細.品目コード ,
受注明細.品目テキスト,
数量,
出荷予定日,
受注明細.受注額,
TP ,
消費税,
機種コード--商流
FROM SAP_連携承認状態
inner join 受注本体
on
(SAP_連携承認状態.集約_伝票管理ID = 受注本体.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
inner join 受注明細
on
(受注本体.受注伝票管理ID = 受注明細.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
错误提示:(基本上每个字段都有个一样的错误提示)
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
Column 'SAP_连携承认状态.伝票区分' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
Column 'SAP_连携承认状态.依頼者' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
Msg 8118, Level 16, State 1, Procedure _sp_Web_OrderConfirmApplicationDetails, Line 46
SELECT
(CASE 伝票区分
WHEN 'A1' THEN '受注伝票登録'
WHEN 'A8' THEN '受注伝票修正'
END),
依頼日,
依頼者,
(CASE SAP_連携承認状態.承認区分
WHEN '01' THEN '承認依頼'
WHEN '02' THEN '承認'
WHEN '03' THEN '却下'
WHEN '04' THEN '保留'
END),
処理日,
処理者,
コメント,
受注本体.[受注No(所属)] + '-' + 受注本体.[受注No(手配No)],
受注本体.[契約書No(所属)] + '-' + 受注本体.[契約書No(手配No)],
[R/3受注伝票タイプ],
[R/3受注伝票No],
ERP受注先,
ERP出荷先,
伝票日付,
[契約(予定)日],
[契約納期(完了日)],
支払条件,
契約区分,
下取区分,
延滞償金,
立会テスト,
伝票通貨,
[インコタームズ(1)],
[インコタームズ(2)],
仕向国,
--受注本体.受注額 - SUM(受注明細.消費税),
--SUM(消費税),
受注本体.受注額,
金利,
販売手数料,
--SUM(TP),
セット,
受注明細.品目コード ,
受注明細.品目テキスト,
数量,
出荷予定日,
受注明細.受注額,
TP ,
消費税,
機種コード--商流
FROM SAP_連携承認状態
inner join 受注本体
on
(SAP_連携承認状態.集約_伝票管理ID = 受注本体.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
inner join 受注明細
on
(受注本体.受注伝票管理ID = 受注明細.受注伝票管理ID)
AND (SAP_連携承認状態.集約_伝票管理ID = @mBillManageID)
如果前面用了某字段用了sum集合函数就都需要用,或者后面用group by分组。
否则就都不要用。