从变量开始的反向递增列

Posted

技术标签:

【中文标题】从变量开始的反向递增列【英文标题】:Reverse Incremented Column Starting from a Variable 【发布时间】:2020-02-25 17:33:53 【问题描述】:

我需要从用户设置的变量开始创建一个反向递增的列。

一个数字将通过 html 表单/php 插入到表格中。之后,我需要以下行从该数字向下递增。

我愿意使用 SQL 或 PHP 或任何其他可能有效的方法来执行此操作,但我只是想不出一种有效的方法。

我的桌子是这样的:

RecID---Input
1         7 <--input by user
2         6 <--number drops by 1
3         5
4         4
5         3

提前致谢!

【问题讨论】:

来自mysql数据库? sql server 数据库 我会考虑使用 ROW_NUMBER。但不确定这些值来自哪里。 minimal reproducible example 会让这更清楚。 【参考方案1】:

如果数据来自 mysql 数据库,您可以使用ORDER BY 子句。

升序:

SELECT RecID, Input FROM dbname ORDER BY Input ASC

降序:

SELECT RecID, Input FROM dbname ORDER BY Input DESC

【讨论】:

【参考方案2】:

还不能评论。

我不确切知道您想要什么,但您可以从末尾使用 for 循环,而不是增加您减少它的数字。

$value=array();
for($i=_user_input_;$i > 0;$i--)
 $value[]=$i;


or 

$value=array('placeholder');
for($i=_user_input_;$i > 0;$i--)
 $value[]=$i;

unset($value[0]); // if you want index to start with one

希望对你有帮助

【讨论】:

以上是关于从变量开始的反向递增列的主要内容,如果未能解决你的问题,请参考以下文章

如何才能让mysql自动递增的字段重新从1开始呢

MySQL自动递增自定义值

php 数组索引值如何重新从0开始递增

数组674. 最长连续递增序列

MySQL 自动递增自定义值

如何从特定点开始自动递增?