嘗試修改現有視圖。它目前在我的數據庫上返回32行。下面的代碼:修改SQL視圖/添加列而不加入
ALTER VIEW [dbo].[vw_fnd_la_Statement]
AS
SELECT
SH.lease_id, S.expense_id, SH.statement_header_id, S.statement_id AS row_id,
EC.name AS expense_category, SH.period, S.invoice_number,
S.received_date, S.due_date, S.landlord_expense_total, S.prorata_share,
S.tenant_expense_total, S.tenant_admin_fee, S.paid_estimates, S.net_due,
CASE
WHEN s.status = 'O' THEN 'Open'
WHEN s.status = 'P' THEN 'In Progress'
WHEN s.status = 'D' THEN 'In Dispute'
WHEN s.status = 'C' THEN 'Closed'
ELSE NULL
END AS status, S.approval,
dbo.UDF_getExpenseVendor(S.expense_id) AS vendor, S.approved_amount,
S.approved_payment_amount, S.disputed_amount, S.held_amount, S.statement_id,
EC.expense_category_id, SH.start_date, SH.end_date, S.status AS status_id
FROM
la_tbl_statement_header AS SH
INNER JOIN
la_tbl_statement AS S ON SH.statement_header_id = S.statement_header_id
INNER JOIN
la_tlu_expense_category AS EC ON S.expense_category_id = EC.expense_category_id
WHERE
(SH.IsDeleted = 0) AND (S.IsDeleted = 0) AND (EC.IsDeleted = 0)
我已經有了第四臺名爲la_tbl_expense_cap_setup
有有效日期列,並且在la_tbl_statement
表匹配費用ID費用ID。我想要的是所有現有視圖的結果,以及生效日期的新列。一些費用沒有大寫字母,因此該行在生效日期列中應該爲NULL。我試過加入費用ID,但我得到了19行的子集。
我認爲你有一個錯字。你的意思是? 'la_tbl_expense_cap_setup AS ECS ON ECS.expense_id = S.expense_id'。這會返回47個結果。我只需要原始視圖的結果,其中包含有效日期或NULL的附加列。 – user2414509
是的 - 那是一個類型錯誤。我在示例中修復了它。如果你只需要原始的32條記錄,也許內部連接會做,但ESC中的費用不能爲空或它會限制你的記錄集小於32.試試看。這只是一個猜測,因爲我不知道ESC和其他表格的字段和關係。 – bsivel