我正在尝试遍历表格中的列值。
我有一个注册表单,根据他的信息为用户提供UNIQUE ID。
例如:
国家=奥地利
选择国家奥地利的每个用户将获得该匹配的某种唯一值(假设为00)。
帐户ID如下所示:
XXXX00UNIQUECODE
每个国家/地区都有自己独特的价值:(AT = 00, DE = 01, etc
)
现在,我想为每个用户生成一个唯一代码,它只是表格中存储的先前UC值的增量(+1)值,表示同一个国家/地区! < / p>
为了做到这一点,我需要以某种方式遍历列,其中存储帐户ID并搜索匹配。 问题是,当用户试图生成UNIQUE CODE时,他还没有,所以他只有:
XXXX00
现在我需要找到AccountID列中的所有XXXX00字符串,并将它们存储在一个数组中 - 然后找到它们的最大值并增加它。
但是我不知道如何搜索表格列中的部分字符串?
只是XXXX00
部分,而不是整个帐户ID XXXX00UNIQUECODE
。
提前致谢!
答案 0 :(得分:1)
你正在将一个正方形的钉子撞到一个圆孔里。为什么不创建一个名为UserID的新列,然后你可以这样做:
SELECT Max(UserID) FROM MyTable WHERE Mid(AccountID, 5, 2) = "00"
并将其递增1。
更好的是,将CountryCode,UserID和XXXX部分存储在不同的字段中,并将它们编入索引。它会节省您搜索或过滤的时间,我认为您将会这样做。