查询Mysql表列中的Where X更新Y和where A update B。
如何在MYsql中对特定表中的同一列执行此操作?我想搜索和替换表列中的多个值。
column1中table1中的条件
Where X update Y
and
Where a update b
and
Where 1 update 2
and
Where 3 update 4
and
Where value1 update value 2
诸若此类。
我可以单独做到这一点,但是我怎么才能更快呢?有没有mysql函数可以帮我解决这个问题?
我有大约120列,每列有200个搜索值和替换/更新值。
谢谢。
在Kettle中,我在转换中使用以下逻辑,给定一些字符串X和Y作为输入:
[User Defined Java Expression] Generate ID
[Insert / Update] Update/Insert table set id = generatedId, name=X, company=Y where name = X; don't update the ID column
[Database Value Lookup]select id from table where name = X
我的想法是更新表中的现有条目或创建新条目,并在下一步中获取感兴趣的行的I
通过与php/Mysql中的另一个表进行比较,我不得不更新表的一列。我试图通过索引表列、优化查询等方法来加快进程,但无法加快进程。
在我的基于php的应用程序中,有两个表(表A和表B),我想通过与表B(带有两个列名& sku)的比较来更新表A的一列。
以前,以上过程已采取最多15薄荷更新28k产品。但是现在两个表(表A和表B)都有60k行。现在要花两个多小时。我使用了下面的查询
mysql_query("UPDATE tableA a
JOIN tableB b ON a.product_code_sku = b.sku
SE
操作系统为ubuntu 16.04
MySQL版本:MySQL Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
在我的系统中
/etc/mysql/ -> ls
conf.d debian.cnf debian-启动my.cnf my.cnf.fallback mysql.cnf mysql.conf.d
在该文件中,我需要配置以获取通用查询日志和慢查询日志。
在MySQL中更新200万行数据的最佳实践是什么?因为通过主id更新,所以我必须用1来更新1。这太慢了。如下所示
UPDATE table SET col1=value1 WHERE id=1;
UPDATE table SET col1=value2 WHERE id=2;
UPDATE table SET col1=value3 WHERE id=3;
UPDATE table SET col1=valueN WHERE id=N;
我想保存非常长的文本,如base64(图像)编码的字符串到mysql表中。
在这种情况下,执行查询(select、insert、update、delete)是否很慢?
select * from A where index = x
table A
column index
column base64String <-- MEDIUMTEXT type
我有一个PHP语句,它循环遍历大量的foreach。
对于每个图标,需要更新DB列sequence。详情如下:
foreach ($icons as $key => $icon) {
// MySql pseudo-code:
UPDATE `tbl_icon2album`
SET `sequence`= $key +1
WHERE iconID= $icon['id']
}
My problem:对于大量的图标来说,这变得非常慢。
我的问题:我可以通过执行一个MySql命令来加快速度吗?这个命令将以某种方式包含forea
服务器版本: Amazon :5.6.19-日志MySQL社区服务器(GPL)
mysql> select VERSION_NO from bb_table where UPDATE_STAMP > '0' and SID='M02147' limit 1 ;
Empty set (0.01 sec)
mysql> select FILE_DATA from bb_table where UPDATE_STAMP > '0' and SID='M02147' limit 1 ;
Empty set (
当我测试这个查询时,大约需要17 - 20秒才能完成。
UPDATE ex_hotel_temp
SET specialoffer='1'
WHERE hid IN
(SELECT hid
FROM ex_dates
WHERE offer_id IS NOT NULL
OR xfory_id IS NOT NULL
OR long_id IS NOT NULL
OR early_id IS NOT NULL
GROUP BY hid)
虽然这是一个在晚上运行的cronjob来对数据库进行一
我有一个包含2500万条记录的SQL Server数据库,我需要更新这些记录。源是一个使用存储过程的C#程序。检查后,存储过程需要很长时间才能更新。
当我使用事务时,1000条记录大约需要10分钟。我已经在用于搜索的所有列上设置了索引键,或者如果列上有条件,这对加速没有帮助。
唯一标识符是字符串,不能更改为数字值。其他列的值是可更改的。我想我的减速原因在下面的部分。
FROM
[Policy]
WHERE
[UniqueIdentifier] = @UniqueIdentifier
AND ([ParentIdentifierId] != @ParentIdenti
我正在尝试确定MySQL更新索引的情况。假设我有下表:
CREATE TABLE MyTable (
ID INT NOT NULL AUTO_INCREMENT,
MyIndexedColumn VARCHAR NOT NULL,
MyNonIndexedColumn VARCHAR,
PRIMARY KEY (ID),
INDEX MyNewIndex(MyIndexedColumn)
)
然后,我运行以下SQL来插入一行:
INSERT INTO MyTable (MyIndexedColumn, MyNonIndexedColumn)
VALUES ('M
以下内容不起作用:
Car.objects.filters(<filter>).update(x=F('y'), y=F('x'))
因为x和y最终都是相同的值。
由于性能原因,我需要使用update()而不是save() (大量记录)。
有没有其他方法可以像上面这样的更新来模仿Python的x, y = y, x
数据库为MySQL,。
我已经在数据库服务器上设置了MySQL慢查询日志,并将长查询时间设置为5。
我刚刚检查了日志和它的日志查询,只需要几毫秒。有人知道为什么会这样吗?这是一些日志。
I am using mysql sloq query log and set the following line in my.cnf file:
slow_query_log=1
long_query_time=5
log-output=FILE
log-queries-not-using-indexes
but my log file show like :
# User@Host: root[root] @ localho
我从远程服务器(在线站点)创建备份drupal(7.12)文件和mysql数据库,以便在localhost(xampp)中运行我的站点。
NOTE: my website is in root: www.domain.com and localhost is : localhost/test2
我更改了mysql数据库配置的sites/default/settings.php中的settnigs.php,并将备份mysql导入到新的mysql数据库(本地主机)中。现在我的本地主机加载非常慢,我的网站没有主题,当我用administrator登录,我的管理user/pass无效,不工作。如何解决