我想从表中选择具有以下规则的数据,但我在编写查询时遇到了问题。我使用的是PostgreSQL,我无法创建UDF。该表是这样的:验证帐号SQL表
id | user_id | account_number
-------------------------------
1 | 1 | 12345671
2 | 4 | 12356673
3 | 7 | 12325678
ID和user_ID的是整数,而账号是一个字符串。我想选择符合以下条件的帐户号码:
- 帐号字符串包含正好8个数字
- 验证方案
- 在第一个7个位数
- 乘第一个数字由1,第2乘2,第3乘3,第4乘1,第5乘2,第6乘3,第7乘1
- 将各位数乘以相关数的结果
- 如果第8位是一样的MOD(总和,10),然后选择这个数
在上面此表中,我只应的前两行与查询返回。
只是重复一遍,我不能创建一个UDF,所以我正在查找这是否可以在查询中使用普通SQL。
谢谢!
对于id = 1的行,总和为1 + 2 * 2 + 3 * 3 + 4 + 5 * 2 + 6 * 3 + 7 = 53,这对mod(53,10)产生3。所以我不明白为什么这行应该返回最后一位是1而不是3 –
UDF应该代表用户定义的函数或用户定义的字段? –