为了账号安全,请及时绑定邮箱和手机立即绑定

如何批量插入Mysql并取得各自的递增ID

如何批量插入Mysql并取得各自的递增ID

PHP
慕田峪4524236 2019-03-06 20:16:11
我用 PHP 从文章中提取关键词,平均一篇文章大约产生 100 多个词,需要录入 Mysql 的三个表,一个文章表,这个好说,一个词语表,结构如下:id 自动递增,主键term 词语,唯一索引第三个表就是词语和文章的关系表(哪个词出现在哪个文章里?)。 给定词语 T,要取得它在词语表里的 ID —— 如果尚不存在,则插入之。最笨的办法是,先 SELECT id from 词语表 WHERE term = 'T',若没有就 insert into ,再获取 ID。 一个词好说,但问题是,现在一篇文章产生了 100 多个词,总不能也这么干吧。请问如何批量取得这些词的 ID —— 如果某个词不在就插入? 我想用存储过程来办,但 Mysql 的存储过程能接收数组吗?或者存储过程接收一个TEXT参数,把 100 多个词用特殊字符拼起来? 求思路,谢谢!!
查看完整描述

5 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

与其这样,不如把自增的ID,改成自定义的ID。比如可以用 redis 的inc生成自增ID。

查看完整回答
反对 回复 2019-03-18
?
UYOU

TA贡献1878条经验 获得超4个赞

首先看看自己的需求什么样,主要存下来干什么,如果只是为了统计某个词的数,一个文章表,一个词语表就好了,
词语表,文章id 词,统计数的时候group by一下也就好了,也就不用管存不存在。

查看完整回答
反对 回复 2019-03-18
  • 5 回答
  • 0 关注
  • 807 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信