DISTINCTES avec PARTITION PAR contre GROUPBY

J'ai trouvé quelques requêtes SQL dans une application que je suis en examinant comme ceci:

SELECT DISTINCT
Company, Warehouse, Item,
SUM(quantity) OVER (PARTITION BY Company, Warehouse, Item) AS stock

Je suis tout à fait sûr que cela donne le même résultat que:

SELECT
Company, Warehouse, Item,
SUM(quantity) AS stock
GROUP BY Company, Warehouse, Item

Est-il un avantage (la performance, la lisibilité, une plus grande souplesse dans l'écriture de la requête, la facilité de maintenance, etc.) de l'aide de la première approche sur le tard?

Comme je l'avais mentalement à analyser la première requête pour un certain temps, il n'a pas de score bien avec la "compréhensibilité"...
Dans ce cas, le PARTITION BY semble juste mal utilisée
Je pense que cette question peut aider à clarifier la différence
J'ai vu cette question, mais il ne pas me donner tout les renseignements que je cherchais. Je voudrais savoir si il pourrait y certaines non évident (pour moi au moins) avantages pour l'utilisation de la première requête. Le deuxième aspect plus "naturel".
Ce qui en gros, je voulais dire, c'est à partir de ce que j'ai lu et je comprends, c'est que l'utilisation de GROUP BY et PARTITION BY ne sont pas vraiment interchangeables. Ils font tous les deux des choses différentes. Je me méfie de simple échange des requêtes les plus fréquentes, même quand ils semblent donner les mêmes résultats.

OriginalL'auteur Andris | 2013-12-04