English 中文(简体)
页: 1 所有选定行各分第一行
原标题:SQL Subtract first row from all selected rows

是否有办法从所有各行中减去首选行的价值? 因此,我

t = 1, v = 500
t = 2, v = 800
t = 3, v = 1200

我会这样做。

t = 1, v = 0
t = 2, v = 300
t = 3, v = 700

I m always looking for a portable solution but a Postgres solution works just the same :-) Thank you.

最佳回答
SELECT  v - FIRST_VALUE(v) OVER (ORDER BY t)
FROM    mytable
ORDER BY
        t
问题回答

可能这样做

SELECT mt2.t, mt2.v - mt1.v AS v
FROM MyTable mt1
CROSS JOIN MyTable mt2
WHERE mt1.t = 1

大部分不使用窗口功能的便携方式:

select v - first
from
  mytable,
  (select v as first from mytable order by t limit 1) as inner
order by t




相关问题
摘录数据

我如何将Excel板的数据输入我的Django应用? I m将PosgreSQL数据库作为数据库。

Postgres dump of only parts of tables for a dev snapshot

On production our database is a few hundred gigabytes in size. For development and testing, we need to create snapshots of this database that are functionally equivalent, but which are only 10 or 20 ...

How to join attributes in sql select statement?

I want to join few attributes in select statement as one for example select id, (name + + surname + + age) as info from users this doesn t work, how to do it? I m using postgreSQL.

What text encoding to use?

I need to setup my PostgreSQL DB s text encoding to handle non-American English characters that you d find showing up in languages such as German, Spanish, and French. What character encoding should ...

SQL LIKE condition to check for integer?

I am using a set of SQL LIKE conditions to go through the alphabet and list all items beginning with the appropriate letter, e.g. to get all books where the title starts with the letter "A": SELECT * ...

热门标签