相关疑难解决方法(0)

查询查找过去一小时内修改的表

我想找出MySQL数据库中过去一小时内修改过的表.我怎样才能做到这一点?

mysql database

32
推荐指数
2
解决办法
5万
查看次数

如何找出何时将数据插入Postgres?

我继承了一个充满数据的现有Postgres数据库.大多数数据都有'created_date'列值.在跟踪之前插入了一些早期数据.

有一个Postgres元数据表隐藏在跟踪INSERT查询完成时的某个地方吗?

postgresql database-metadata

12
推荐指数
2
解决办法
1万
查看次数

更新语句中的冗余数据

UPDATE无论我是否更改了列中的值,Hibernate都会生成包含所有列的语句,例如:

tx.begin();
Item i = em.find(Item.class, 12345);
i.setA("a-value");
tx.commit();
Run Code Online (Sandbox Code Playgroud)

发表此UPDATE声明:

update Item set A = $1, B = $2, C = $3, D = $4 where id = $5
Run Code Online (Sandbox Code Playgroud)

因此列B,C,D会更新,而我没有更改它们.

比如,项目经常更新,所有列都被编入索引.问题是:将Hibernate部分优化为这样的事情是否有意义:

tx.begin();
em.createQuery("update Item i set i.a = :a where i.id = :id")
    .setParameter("a", "a-value")
    .setParameter("id", 12345)
    .executeUpdate();
tx.commit();
Run Code Online (Sandbox Code Playgroud)

最让我困惑的是,EXPLAIN"未经优化"和"优化"查询版本的计划完全相同!

postgresql hibernate jpa sql-execution-plan

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

反转SELECT语句的初始顺序

我想在Postgres中运行一个SQL查询,它与你在没有order by子句的情况下运行初始查询所获得的完全相反.

因此,如果您的查询是:

SELECT * FROM users 
Run Code Online (Sandbox Code Playgroud)

然后

SELECT * FROM users ORDER BY <something here to make it exactly the reverse of before>
Run Code Online (Sandbox Code Playgroud)

它会这样吗?

ORDER BY Desc
Run Code Online (Sandbox Code Playgroud)

sql postgresql sql-order-by

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