預存程序中SELECT與SET

http://fecbob.pixnet.net/blog/post/39081221-%E9%A0%90%E5%AD%98%E7%A8%8B%E5%BA%8F%E4%B8%ADselect%E8%88%87set%E5%B0%8D%E8%AE%8A%E6%95%B8%E8%B3%A6%E5%80%BC
SQL Server 中對已經定義的變數賦值的方式用兩種,分別是 SET 和 SELECT。
下表列出 SET 與 SELECT 的區別。

set

select

同時對多個變數同時賦值

不支持

支持

運算式返回多個值時

出錯

將返回的最後一個值賦給變數

運算式未傳回值

變數保持原值

霞海還願

總算要邁入婚姻啦!! 等久還是會等到的….XD
記錄一下”霞海城隍廟”喜餅還願的流程

準備事項:
>喜餅一盒
>之前求的紅線一條
>香油錢
>虔誠的心

流程:
投香油錢,拿香及金紙
-> 至櫃台告知還願,領取香包
-> 神明桌旁會有專人說明祭拜流程
-> 拿香至天公爐拜拜,不插香
-> 回神桌前,廟方人員會將紅線放入香包,拿香和城隍、月老告知男女雙方姓名、生日、事由
-> 接著往另一間依序參拜義勇公、城隍夫人(求夫妻和諧)、觀音菩薩(求早生貴子)
-> 出門口,至天公爐拿香包順時鐘繞三圈,插香謝恩
-> 回神桌,將金紙拿起來拜拜,並放到門外回收處,喜餅可留在桌上給信眾沾喜氣
-> 最後的最後當然要喝杯甜茶做個完美的ENDING

拜完的香包可放於家中,有保平安之用。

結婚與愛情

別人分享的文章….深有感觸


 

從小我們就以為結婚就是Happy Ending:「從此過著幸福快樂的日子」,我們以為結婚了就幸福了,就拿到愛情的證書、就是愛情的終點。

長大後、成熟後,自己經歷了感情、看多了旁人的婚姻,才發現,原來,結了婚過的幸福的並沒有想像中那麼多,甚至不幸福的用各種理由撐著婚姻的更多。

原來,有的感情可以同甘、不能共苦,有的禁得起風雨,但禁不起平凡。相愛那一刻,彼此可以海誓山盟,不愛的時候,你連多看他一眼都嫌煩。人會變、愛會變,有的婚姻沒有了愛情,還有親情、道義、習慣,甚至金錢來維繫,有的人可以接受沒有愛情的婚姻,有的人卻不能。
婚姻,大部分的時候不是為了愛情而活,是為了生活而活。年紀漸長,我們不得不承認,相處比相愛重要,因為再浪漫的愛情,都會被生活瑣事、家庭關係所磨滅。海誓山盟可能抵不過你今天垃圾忘了丟。

不相愛的兩人,卡在婚姻裡成了怨偶,或許,他們離開了婚姻,可以變成朋友。其實我們更要欣賞他們的誠實和勇敢,真正的勇敢不是忍耐一段發爛的關係委屈求全、自欺欺人,而是懂得放手、放過自己、放過別人,因為你還有讓自己幸福的能力。人生並不是只有一條路可以走。

或許我們現在唸童話故事給孩子聽時,我們要改一下「從此幸福快樂」的說法,而是告訴他們,不管一段關係之後會不會讓你幸福,你都要擁有跳出高塔、活出自我的勇氣。

人沒有完美,幸福也沒有完美。我們都會犯錯、都在學習,我們都愛過,也都痛過,對於過去,好好放下,對於別人,多給祝福。不愛你的人也曾對你好過,記得好就好,恨別人只是傷了自己。

幸福沒有Happy Ending,而是把握每一天,把它當作相愛的第一天、活著的最後一天來過,活在當下、愛在當下,且行且珍惜。

最後你會發現,真正的幸福不一定是來自於愛情,而是來自於你自己的內心。

[SQL]將多筆資料合併為一筆顯示(FOR XML PATH)

原文:[SQL]將多筆資料合併為一筆顯示(FOR XML PATH)

用北風資料庫舉例

step1:先讓我們看看orderID = ‘10248’的產品有哪些


SELECT * FROM [Order Details] 
where OrderID = '10248'

有這些

step2:然後我們利用for xml path把他合併顯示


SELECT cast(ProductID AS NVARCHAR ) + ',' from [Order Details] 
where OrderID = '10248'
FOR XML PATH('')

輸出是這樣,可以發現果然productID都合併了

step3:然後改成顯示所有的order的productID


SELECT OrderID,(SELECT cast(ProductID AS NVARCHAR ) + ',' from [Order Details] 
where OrderID = ord.OrderID
FOR XML PATH('')) as productIDs
from orders ord
GROUP BY orderid

輸出像是這樣,所有的order的productID,但是productID還多一個逗號

step4:最後動些手腳,輸出就完美了,成功的將多筆資料合併為一筆


SELECT m.OrderID ,left(m.productIDs,len(m.productIDs)-1) as productIDsFinal from 
(SELECT OrderID,(SELECT cast(ProductID AS NVARCHAR ) + ',' from [Order Details] 
where OrderID = ord.OrderID
FOR XML PATH('')) as productIDs
from orders ord
GROUP BY orderid) M --這個M一定要加,不知道為啥
ORDER by M.OrderID 

最後輸出: