【发布时间】:2012-12-14 11:21:22
【问题描述】:
在 mySql 中,是否可以基于某些东西进行插入?就我而言,我想根据用户的位置进行插入。这些位置就像美国、英国、澳大利亚、加利福尼亚等。 因此,如果位置是美国,我想为英国 2-001、2-002 等做 1-0001、1-0002 等。
也许通过使用类似的案例这可能是可能的?
我当前的插入是这样的:
insert into prodClassifieds (userId, userName, classStatus, classCountry, classId)
select
$userId,
'$userName',
1,
'$userCountry',
IFNULL((MAX(classId)+1) ,0)
FROM prodClassifieds
编辑:我可以省略 1-0001 中的 -。 MAX(col) 也是 MAX(classId) 不是我最初发布的那个。下一个值是 1 + 当前值。
【问题讨论】:
-
是的,可以使用
CASE。您要修改哪个值?哪一列的结果是1-0001? -
将位置值放入表中并加入
-
如果您尝试为
classId构建那些,那将更加困难,因为MAX()+1会受到竞争条件的影响......让我们知道如何使用这些,我们可以提供帮助。 -
@MichaelBerkowski classId
-
@Norman 这是一次性数据加载,还是通过实时站点不断更新?