我有一个 SQL 查询,我提供输入并接收输出。所以我检查用户是否正在输入变量。但是我想改进它。
目前我使用以下语句来检查输入变量是否包含变量,如果他们没有输入,则会自动为他们设置范围,如下所示。
注意:
- :StudentIdFrom
是我配置为允许用户输入查询的输入字段。
- **:**
(冒号表示它是一个输入)
- studentNo
是恰好 10 个字符的字符变体类型
- 所有输入都是字符串。
(CASE
WHEN LENGTH(:StudentIdFrom ) > 0
THEN CAST(studentNo AS VARCHAR(10)) BETWEEN :StudentIdFrom AND
(CASE
WHEN LENGTH(:StudentIdUntil) > 0
THEN :StudentIdUntil
ELSE :StudentIdFrom
END)
ELSE CAST(studentNo AS VARCHAR(10)) BETWEEN '0000000001' and '9999999999'
END
)
我只想让用户简单地输入一个数字,而不是在语句中输入所有的 0。
最佳答案
试试这个:
select replicate(0,10-len(field))+field
关于sql - 如何在 Postgresql 中向字符串添加任意数量的数字或从字符串中删除数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50255627/