簡體   English   中英

用於將行與重復項合並的SQL查詢

[英]SQL Query for combining rows with duplicates

我是OrientDb的新手,感到有點困惑。


我有一些看起來像這樣的數據:

md5hash       sessionId  path
------------------------------------
value0        zzz        roosters
value1        aaa        cows
value1        bbb        ducks
value1        bbb        pigs
value1        ccc        chickens
value1        aaa        horses
value2        ggg        sheep



我想要的一切都是value1md5hash ,所有重復路徑都顯示為父md5hash的子md5hash ,因此我嘗試了以下查詢:

SELECT md5hash, sessionId, path, FROM file WHERE md5hash="value1"

這是我想要的樣子:

md5hash       sessionId  path
------------------------------------
value1        aaa        cows
                         horses
value1        bbb        ducks
                         pigs
value1        ccc        chickens



甚至更好,看起來像這樣:

md5hash       sessionId  path
------------------------------------
value1        aaa        cows, horses
value1        bbb        ducks, pigs
value1        ccc        chickens



但是,每當我添加GROUP BY子句時,它都會消除數據。 如果我組sessionId ,然后我解開horsespigs

我也和DISTINCT討價還價沒有用。 我覺得我在這里錯過了一些非常基本的東西。

這就是我的查詢的最終結果:

md5hash       sessionId  path
-------------------------------
value1        aaa        cows
value1        aaa        horses
value1        bbb        ducks
value1        bbb        pigs
value1        ccc        chickens


有人可以指出我正確的方向嗎?

嘗試這個:

select md5hash, sessionId, $a.path from (select from file where md5hash="value1")
let $a=(select from file where md5hash="value1" and sessionId=$parent.current.sessionId)
group by sessionId

這是輸出:

在此處輸入圖片說明

希望能幫助到你

問候

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM