我不是一個真正的程序員,我試圖按照給定年份按月對報價,採購訂單和發票進行求和。我遇到的一些問題(試圖專門使用查詢嚮導)已經鏈接上面列出的3個類別發生的日期。例如從同一個錶鏈接的SQL查詢
InvoiceCost|InvoiceDate|QuoteCost|QuoteDate|POCost|PODate
$$$ | Date | $$$ | Date | $$$ | Date
$$$ | Date | $$$ | Date | $$$ | Date
(希望工程) 我想從這樣一個表來獲取是總結的類別和每月對其進行排序的查詢。我已經得到的是行日期列出的所有獨特的組合與各自類別的款項通過 -
SELECT DISTINCTROW Format$([Table].[invoiceDate],'mmmm yyyy') AS [invoiceDate By Month],
Format$([Table].[PODate],'mmmm yyyy') AS [PODate By Month],
Format$([Table].[quoteDate],'mmmm yyyy') AS [quoteDate By Month],
Sum(Table.invoiceCost) AS [Sum Of invoiceCost],
Sum(Table.POCost) AS [Sum Of POCost],
Sum(Table.quoteCost) AS [Sum Of quoteCost]
FROM Table
GROUP BY Format$([Table].[invoiceDate],'mmmm yyyy'),
Format$([Table].[PODate],'mmmm yyyy'),
Format$([Table].[quoteDate],'mmmm yyyy'),
Year([Table].[invoiceDate])*12+DatePart('m',[Table].[invoiceDate])-1,
Year([Table].[PODate])*12+DatePart('m',[Table].[PODate])-1,
Year([Table].[quoteDate])*12+DatePart('m',[Table].[quoteDate])-1;
我想知道一些SQL「神奇」,將表內鏈接的日期列,以避免獨特的日期組合。
編輯
更具體地講,
<style type="text/css">
table.tableizer-table {
border: 1px solid #CCC; font-family: Arial, Helvetica, sans-serif
font-size: 12px;}
.tableizer-table td {
padding: 4px;
margin: 3px;
border: 1px solid #ccc;}
.tableizer-table th {
background-color: #104E8B;
color: #FFF;
font-weight: bold;}
</style><table class="tableizer-table">
<tr class="tableizer-firstrow"><th>invoiceDate</th><th>QuoteDate</th><th>PODate</th><th>sumInvoice</th><th>sumQuote</th><th>sumPO</th></tr>
<tr><td> </td><td>17-Jul-13</td><td>01-Jul-13</td><td>$0.00</td><td>$0.00</td><td>$0.00</td></tr>
<tr><td>30-Jul-13</td><td>01-Jan-14</td><td>31-Mar-14</td><td>$100.00</td><td>$10.00</td><td>$48.00</td></tr>
<tr><td>30-Dec-13</td><td>01-Feb-14</td><td>10-Jan-14</td><td>$615.00</td><td>$50.00</td><td>$23.00</td></tr>
<tr><td>03-Jan-14</td><td>01-Jan-14</td><td>16-Mar-14</td><td>$3.00</td><td>$100.00</td><td>$615.00</td></tr>
<tr><td>16-Jan-14</td><td>01-Jan-14</td><td>20-Feb-14</td><td>$65.00</td><td>$50.00</td><td>$156.00</td></tr>
<tr><td>03-Mar-14</td><td>24-Jan-14</td><td>24-Feb-14</td><td>$0.00</td><td>$200.00</td><td>$0.00</td></tr>
<tr><td>11-Mar-14</td><td>18-Dec-13</td><td>21-Feb-14</td><td>$3,500.00</td><td>$5,000.00</td><td>$4,000.00</td></tr>
<tr><td>13-Mar-14</td><td>01-Jan-14</td><td>11-Dec-13</td><td>$15.00</td><td>$1,000.00</td><td>$231.00</td></tr>
<tr><td>15-Mar-14</td><td>30-Jan-14</td><td>19-Feb-14</td><td>$10.00</td><td>$8,000.00</td><td>$20.00</td></tr>
<tr><td>20-Mar-14</td><td>09-Jan-14</td><td>14-Feb-14</td><td>$1,000.00</td><td>$200.00</td><td>$20,000.00</td></tr>
<tr><td>21-Mar-14</td><td>01-Mar-14</td><td>20-Feb-14</td><td>$15.00</td><td>$10,000.00</td><td>$45.00</td></tr>
</table>
注意行中的日期作出的組合。我希望看到的是這樣的事情
invoiceD|POD |quoteD |SumOfinvoiceCost|SumOfPOCost|SumOfquoteCost
1-2014 |1-2014 |1-2014 |$68.00 |$23.00 |$9,560.00
12-2013 |12-2013|12-2013|$615.00 |$231.00 |$5,000.00
3-2014 |3-2014 |3-2014 |$4,540.00 |$663.00 |$10,000.00
7-2013 |7-2013 |7-2013 |$100.00 |$0.00 |$0.00
我已經能夠得到這個通過使4個總查詢工作(3使按月和日期聯繫在一起的第四單獨類別的資金。) SQL是否可以在一個查詢中完成所有這些操作,或者我應該只是在訪問中創建3個獨立的表來存儲類別之間的類別?
讓我知道是否需要更多信息。 感謝
quel SQL?微軟的「版本」? – wildplasser
請提供樣本數據和期望的結果。 –
你正在使用哪個dbms? MySQL的? SQLServer的? PostgreSQL的? – carexcer