执行 Mysql 多选的最有效方法(如果不存在则插入)
Posted
技术标签:
【中文标题】执行 Mysql 多选的最有效方法(如果不存在则插入)【英文标题】:Most efficient way to do Mysql Multi select (and insert if not exists) 【发布时间】:2012-01-24 21:53:55 【问题描述】:我有 20 个表,有 2 个字段,id 和名称描述
Colors
id name
1 black
2 blue
...
Sizes
id name
1 100
2 105
...
现在我有了包含 21 个字段的主表
Main table `shoes`
id Colors Sizes style ...
1 2 24 11
我有一个包含 20 个文本输入的表单帖子(一个用于每种功能、颜色、大小..) 我想要的是学习查看 20 个特征表的最有效方法(从 name='blue' 的颜色中选择 id)并获取 id 值,如果不存在,则创建它(插入颜色(名称)值(粉红色) ) 然后获取 id ,一旦我有了 20 个值,就会在主字段中进行大插入
【问题讨论】:
【参考方案1】:使用INSERT ... ON DUPLICATE KEY UPDATE 语法。
【讨论】:
感谢您的回答,我知道您的方式,但您的意思是这样做 20 个不同的句子? 我不知道你在问什么。 我的意思是.. 我应该做 20 次 $db->(insert.. on duplicate key) 吗?这是最有效的方法吗?以上是关于执行 Mysql 多选的最有效方法(如果不存在则插入)的主要内容,如果未能解决你的问题,请参考以下文章