這個功能,我有我想要做什麼,只是想知道如果有一種方法可以做到這一點一氣呵成:選擇並組合使用左()多個表2行
drop table ##aa
select s.storeid,cast(LEFT(p.paytype,1) as varchar(50)) as Paytype,SUM(amount) as Total
into ##aa
from RPTrs s, rpPay p
where s.storeid=p.StoreID and s.ReceiptNO=p.ReceiptNo
and trsdate between '1/1/06' and '1/1/13'
group by s.storeid,LEFT(p.paytype,1)
update A set a.paytype=b.currencydesc
from ##aa a, Currencies b
where a.Paytype=b.POSCurrency
select * from ##aa order by Paytype, StoreID
我是什麼問的是,我想將b.CurrencyDesc應用到最初的p.paytype。該Paytype只是顯示C作爲例子,但我希望它放置現金和V簽證以及諸如它是在貨幣表中描述
請不要在日期/時間類型中使用'BETWEEN',[特別是如果您碰巧在SQL Server上](http://sqlblog.com/blogs/aaron_bertrand/archive/2011/10/19/what (這篇文章解釋了爲什麼這對SQL Server特別危險,但其他RDBMS有相關的擔憂)。坦率地說,我個人認爲這是錯誤的方式來_關於日期/時間值;最好將它們視爲「不精確」的範圍值,類似於處理(十進制)浮點的方式。所以你的結局是在「1/2/13」之前的任何時候。 –