我正在学习SQLite,我现在提出的问题是,是否有一种简单的方法可以将顺序编号添加到查询的输出中。下面,我提供了一个我试图实现的示例。
例如,我有以下查询:
SELECT
splTicker AS 'Ticker',
count(splTicker) AS '# of Splits'
FROM Splits
GROUP BY splTicker
ORDER BY count(splTicker) DESC, splTicker ASC;此查询的输出如下:
bash-3.2$ sqlite3 myShares < Queries/Split.sql
Ticker # of Splits
---------- -----------
AI.PA 7
ASML.AS 3
BN.PA 3
ALTR.LS 2
BOKA.AS 2
DG.PA 2
...
SON.LS 1
SU.PA 1
SW.PA 1
TEC.PA 1
UMI.BR 1
VIV.PA 1
VPK.AS 1 我正在尝试向这些行添加一个序列号,以获得以下输出:
# Ticker # of Splits
-- ---------- -----------
1 AI.PA 7
2 ASML.AS 3
3 BN.PA 3
4 ALTR.LS 2
5 BOKA.AS 2
6 DG.PA 2
... 目前,我使用了一种变通方法,并在Perl中添加了查询后的行号。我提出的问题是,我是否可以直接在SQLite中做到这一点。这个想法似乎很简单,但我还没有找到解决方案。任何帮助都将不胜感激。
诚挚的问候,
GAM
发布于 2016-05-02 18:22:08
试试这个:
SELECT
(SELECT COUNT(*)
FROM Splits AS s2
WHERE s2.splTicker <= s1.splTicker) AS '#',
splTicker AS 'Ticker',
count(splTicker) AS '# of Splits'
FROM Splits s1
GROUP BY s1.splTicker
ORDER BY count(s1.splTicker) DESC, s1.splTicker ASC;https://stackoverflow.com/questions/36979935
复制相似问题