2013-02-22 109 views
1

我正在爲類建立婚禮數據庫,並且當前有一張表用於費用。該表格顯示費用標籤(鮮花,攝影師,樂隊......)和付款截止日期(等等)。我還爲其他任務提供了一個單獨的表格(請問新娘派對,發送邀請......)。在查詢中的某些值之前添加文本

我目前有一個聯合查詢,將兩個表合併爲一個「待辦事項列表」。下面是查詢的SQL:

SELECT Expense AS Task, DateDue, tblExpenses.[Paid?] AS [Completed?] 
from tblExpenses 
UNION SELECT Task, DateDue, tblToDoList.[Completed?] 
from tblToDoList; 

我的問題是最終名單合併按計劃進行,但列表中有值,如「花」下的「任務」的標題。我希望能夠在來自費用表的值之前添加「付費」或「付費」,這樣它就像謂詞而不是主題一樣。有沒有辦法做到這一點?

對不起,如果任何這是令人困惑。我對SQL的知識非常有限,我不確定如何精確地描述一切。

+1

是否有你可以加入的兩個表列?從你的解釋中可以看出,tblExpenses和tblToDoList包含兩種不同的東西,但是你可以在ToDo列表中找到可以支付或不支付的東西。所以我有點困惑。但是,如果兩個表格有一個共同的列,請考慮使用JOIN而不是UNION – Melanie 2013-02-22 20:55:12

+0

如果您的意思是按某個鍵,那麼目前沒有。我是建立數據庫的真正初學者,數據庫中的關係一直是我的弱點。基本上,tblexpenses是來自tblToDoList的附加有附加信息的任務的子集。 (我認爲這是一個正確的看待它的方法。) – 2013-02-22 21:00:44

回答

0

怎麼樣..?

SELECT Expense AS Task, DateDue, 
     IIf(tblExpenses.[Paid?]=True,"Paid","Pay For") AS [Completed?] 
FROM tblExpenses 
UNION 
SELECT Task, DateDue, tblToDoList.[Completed?] 
FROM tblToDoList; 

如果付費爲真(是),查詢將返回「付費」,否則將返回「付費」。

回覆評論

SELECT "Paid " & Expense AS Task, DateDue, 
     tblExpenses.[Paid?] AS [Completed?] 
FROM tblExpenses 
UNION 
SELECT Task, DateDue, tblToDoList.[Completed?] 
FROM tblToDoList; 
+0

我不認爲我明確表達了我的目標。 [Completed?]字段工作正常。 目前,從「任務」字段中的tblExpenses返回的值只是表示鮮花,攝影師等。我希望他們返回付費花卉,付費攝影師等。 – 2013-02-22 20:56:44

+0

始終支付?如果是這樣,你可以只填寫上面所示的文字。 – Fionnuala 2013-02-22 21:00:10

+0

哇。我試過這個昨晚的每一次迭代,但是讓它太複雜了。這應該有效,但是Melanie的評論讓我覺得他們可能是從一開始就建立我的桌子的更好方式。非常感謝! – 2013-02-22 21:02:54