小编Roh*_*wad的帖子

MySQL 更新连接性能

我需要根据另一个表中的列更新一个表中的几个列。首先,我只是更新其中之一。我已经尝试了 2 种方法来做到这一点,这两种方法都有效,但是它们使用 mySQL 命令需要大约 4 分钟,而在 php 中运行时需要超过 20 分钟。两个表的长度都约为 20,000 行。

我的问题是,有没有更好或更有效的方法来做到这一点?

方法一:

   UPDATE table_a,table_b 
   SET table_a.price = table_b.price 
   WHERE table_a.product_code=table_b.product_code
Run Code Online (Sandbox Code Playgroud)

方法二:

   UPDATE table_a INNER JOIN table_b 
   ON table_a.product_code = table_b.product_code
   SET table_a.price=table_b.price
Run Code Online (Sandbox Code Playgroud)

我想这些基本上以相同的方式工作,但我认为加入会更有效率。product_code 列是随机文本,尽管是唯一的,并且每一行都与另一个表中的一行相匹配。

还有什么我可以尝试的吗?

谢谢

更新:这是通过创建索引解决的,例如

    CREATE UNIQUE INDEX index_code on table_a (product_code)
    CREATE UNIQUE INDEX index_code on table_b (product_code)
Run Code Online (Sandbox Code Playgroud)

php mysql performance join

6
推荐指数
1
解决办法
2915
查看次数

ng-repeat显示html数组中对象的索引

我想要这个数组:

var data = [1, 2, 3, 4, 5];
Run Code Online (Sandbox Code Playgroud)

我想使用angular在html中显示数据和索引:

<div ng-repeat="data in data">
  <p> index of {{ data }}: {{ something here }} </p>
</div>
Run Code Online (Sandbox Code Playgroud)

和输出将是

<div>
  <p> index of 1: 0 </p>
  <p> index of 2: 1 </p>
  <p> index of 3: 2 </p>
  <p> index of 4: 3 </p>
  <p> index of 5: 4 </p>
</div>
Run Code Online (Sandbox Code Playgroud)

可能?

html javascript angularjs angularjs-ng-repeat

3
推荐指数
1
解决办法
1023
查看次数

行数较少的表与具有许多行的一张表

我正在为许多用户创建一个测试站点以进行许多测验。我想将这些结果存储到表格中。每个用户可以参加 5000 个测验。我的问题是...为每个用户制作一个表格并将他的结果存储到他自己的表格中会更好吗(QuizID,Score)...或者...将所有结果存储到一个表格中会更好吗(用户 ID、测验 ID、分数)?

示例 5000 个问题 PER 表 * 1000 个用户表 VS 1 个表,其中 1000 个用户有 5,000,000 行。

另外,数据库可以容纳的 ROW 或 TABLE 是否有限制?

mysql database asp.net database-design

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

MySQL - 为什么我的 innodb_force_recovery 显示为“未知变量”

好的,首先,我跑了

locate my.cnf

哪个给了

/etc/mysql/my.cnf

这也是 mysqld 设置的默认配置位置

然后编辑my.cnf在[mysql]下添加的文件

[mysql]
innodb_force_recovery = 3
Run Code Online (Sandbox Code Playgroud)

然后重新启动mysqld并尝试登录 mysql -u root -p

我收到一个错误说

mysql: unknown variable 'innodb_force_recovery=3'
Run Code Online (Sandbox Code Playgroud)

也在跑步 show variables

我看到这个领域

innodb_force_recovery = 0

我正在使用 MySQL 5.5.44

发生这种情况有什么特殊原因吗?

mysql database innodb

0
推荐指数
1
解决办法
3373
查看次数