Re: [INTERBASE]請問如何找出相同的值

看板Database作者 (多想兩分鐘 = =")時間17年前 (2008/09/10 21:30), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/3 (看更多)
※ 引述《matchyou (這樣也要罵=.=)》之銘言: : 以下sql只在sql server 測試過可行 : interbase不確定可不可行 : select * from A : where (convert(varchar,客戶姓名) + '--' + convert(varchar,消費序號)) in : ( : SELECT (convert(varchar,客戶姓名) + '--' + convert(varchar,消費序號)) : FROM A : group by 客戶姓名,消費序號 having count((convert(varchar,客戶姓名) + '--' + : convert(varchar,消費序號)))>1 : ) 沒看完整串就先推文,我的想法也是類似這樣; select A.* from A join ( SELECT convert(varchar,客戶姓名) name, convert(varchar,消費序號) sno FROM A group by 客戶姓名,消費序號 having count(1)>1 )x on x.name=客戶姓名 and x.sno=消費序號 這個寫法結果應該是一樣的,但資料量大的時候可以透過建立索引有好一點的效率.. 當然,這只是理論上,僅供參考,效率是實際做才會知道的事 : ※ 引述《woohyuk49 (Forever H.O.T)》之銘言: : : 好比說 : : 表A : : 客戶姓名 消費序號 日期 : : 小王 1 970101 : : 小李 5 970505 : : 小黃 2 970805 : : 小王 2 970208 : : 小陳 1 970509 : : 小王 2 970315 : : 說明:一個客戶的消費序號都是從1開始 : : 像小王 消費序號是 1>2>2 照理來說應該是3 : : 如果說我現在想把此種狀況的查詢出來 我該如何下語法呢 : : 下語法後出現的資料要像是 : : 客戶姓名 消費序號 日期 : : 小王 2 970208 : : 小王 2 970315 : : 謝謝版友^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.203.139

09/11 09:33, , 1F
可以了^^ 謝謝您
09/11 09:33, 1F
文章代碼(AID): #18nyl-9- (Database)
文章代碼(AID): #18nyl-9- (Database)