台灣最大程式設計社群網站
線上人數
1278
 
會員總數:239910
討論主題:186054
歡迎您免費加入會員
討論區列表 >> VB.NET >> SQL WHERE
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
SQL WHERE
價值 : 50 QP  點閱數:176 回應數:5

樓主

Chen Rickey
門外漢
0 4
96 11
發送站內信

遇到一個問題
覺得自己下的怪怪的 看有沒有其他方法

三年內有交易紀錄的客戶

MAX(交易日期)

條件 在三年中的 5月7月 有過交易紀錄 且不能再 三年中的 1-4月/6月/8-12月有過交易紀錄

所以我的方式就 變成 SELECT 客戶,MAX(交易日期) FROM A WHERE (交易日期 LIKE'____05%' OR 交易日期 LIKE'____07%') 客戶 NOT IN (SELECT 客戶 FROM A WHERE (交易日期 NOT BETWEEN'20140101'AND'20140431')...推3年)

有沒有大大們 可以教正確的方法?




搜尋相關Tags的文章: [ SQL ] ,
本篇文章發表於2017-05-10 14:36
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

Sdany
捐贈 VP 給 Sdany 檢舉此回應


※未驗證
本篇文章回覆於2017-05-10 21:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Chen Rickey
檢舉此回應
回樓上

測試後發現 資料會出來可是 資料三年內有 5 7月的就會出來

實際去查 其實該筆資料 在 其他月份有交易過

請問該如何修改 才能排除

本篇文章回覆於2017-05-11 11:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Sdany
捐贈 VP 給 Sdany 檢舉此回應
能否提供 測試用 數據?
本篇文章回覆於2017-05-11 11:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Chen Rickey
檢舉此回應
自己修改一下 大大提供的程式

已經正常了

我有增加ROW_NUMBER() AS N

我想用這樣條件 將N直接UPDATE 同資料表的T欄

但一直有錯誤 這邊要這麼修改 才能直接UPDATE!?
本篇文章回覆於2017-05-11 17:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

Sdany
捐贈 VP 給 Sdany 檢舉此回應
into 到暫存 table

再做兩個 table join 來更新
本篇文章回覆於2017-05-12 12:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.