我的公司最近进行了一次数据库升级,从Mysql5升级到Mysql8,我们的一些查询已经大大放缓。(从几秒钟到30分钟后超时)。
我唯一的想法是,数据库设置一定有问题,但是如果一些熟悉的人能够查看这个查询,看看是否可以改进它,那就太好了。
select sd.*,
sd.transactionDate as transactionDate,
r.id as resellerId,
max(pa.id) as platformAccountId,
op.paymentTypeId as paymentTypeId,
u
使用MySQL数据库。
我有一张商店的桌子。store表至少有80,000条记录。用户可以通过从下拉列表中选择郊区来搜索商店表。我最好创建一个郊区表(见下文),并在store表中搜索郊区id,或者将其作为文本匹配保存在store表中?
Store
- id
- name
- suburb_id
Suburb
- id
- name
我猜使用store_id外键,我可以创建和索引?
使用将表的全部内容从Server复制到MySQL计算机上的相同表中。MySQL数据库使用MySQL ODBC5.1驱动程序作为链接服务器连接到Management。使用一个简单的语句很好,但是执行非常慢。
INSERT INTO openquery(MYSQL, 'select * from Table1')
SELECT * from MSSQL..Table2
我有一张约有45万张唱片的桌子,转机只需5个多小时。这是正常的吗?我以前没有链接MySQL服务器的经验。
我使用hibernate注释和Mysql作为数据库。我有两张表,一张是买方表,另一张是CashReceipt。CashReciept在Purchaser表上有一个引用键。
那么,我如何删除特定买方的CashReceipt记录呢?
我尝试过这个查询
session.createQuery("Delete FROM CashReceipt cr LEFT JOIN cr.purchase p WHERE p.id=:sid")
.setInteger("sid", purchase.getId()).executeUpdate();
我有两个表,A和B,它们位于同一MySQL服务器上的不同数据库中。我想从表A和表B创建一个派生的表C,作为两个表之间的内部连接。
如下所示(伪代码):
create table C as select A.gene, B.pubmed_id, B.pubmed_text from A inner join B ...
这样做会不会有业绩问题呢?将表A和表B加载到同一个数据库中是否更谨慎?这两张都是很大的桌子,有数百万张记录。