小编Tim*_*imo的帖子

MySQL:只执行一次 CREATE TEMPORARY TABLE SELECT?

我想用一些选择数据创建一个临时表。

我的(奇怪的)问题是我必须多次执行相同的查询。

CREATE TEMPORARY TABLE IF NOT EXISTS cache (id int(11) NOT NULL, INDEX (id)) 
SELECT id FROM table WHERE xyz;

CREATE TEMPORARY TABLE IF NOT EXISTS cache (id int(11) NOT NULL, INDEX (id)) 
SELECT id FROM table WHERE xyz;
Run Code Online (Sandbox Code Playgroud)

不幸的是,尽管临时表已经存在,MySQL 还是执行了第二个查询。

问题

  • 有没有办法告诉 MySQL 临时表的创建和SELECT查询在表不存在的情况下才执行?
  • 也许有一个if条件?
  • 或者,如果存在临时表,我可以检查某些信息模式吗?感谢您的帮助!

此致,

蒂莫

mysql if-not-exists temporary-tables

7
推荐指数
1
解决办法
5万
查看次数

使用 MySQL 全文索引缓慢插入

我在 MySQL 表中使用全文索引,每次插入到该表中大约需要 3 秒。似乎 MySQL 在每次插入/更新后重建(一部分)全文索引。这是正确的吗?

该表有大约30varchartext领域,在VARCHAR字段的一些指标,并通过三个域的全文索引title_text (char(255)), content_text (text), author_text (char(255))。表中大约有 210.000 行,表大小约为 2.5 GB,索引大小约为 0.5 GB。对每一个新行都执行插入查询(没有对所有插入的组合查询)。

我怎样才能从INSERT? 当 MySQL 重建全文索引时,是否有设置选项?

mysql index optimization full-text-search

5
推荐指数
1
解决办法
2732
查看次数