首页 > 数据库技术 > 详细

数据库和后台查询视图结果不一致

时间:2021-09-02 14:35:58      阅读:15      评论:0      收藏:0      [点我收藏+]

最近在做一个项目,有一个令人发指的bug,虽然解决了,但是并没有搞明白其中的原理是什么;

bug:id条件没有查错,但是后台就是返回给我两条一摸一样的数据

技术分享图片

 

 数据库后台查询:查询结果是两条不一样的数据

技术分享图片

 

原来视图时这么写的:写法一

CREATE OR REPLACE VIEW DBGL_V_MEET AS
SELECT
a.*,
b.*,

c.*,

FROM  test_main a
LEFT JOIN test_detail b ON a.recid=b.mainid
LEFT JOIN test_proj c ON b.projid=c.recid
;

改正后:写法2

CREATE OR REPLACE VIEW DBGL_V_TEST AS
SELECT
a.*,
b.*,
c.*, FROM test_detail a LEFT JOIN test_main b ON a.mainid
=b.recid LEFT JOIN test_proj c ON a.projid=c.recid ;

虽然:写法一和写法二,在数据库里面执行结果都时一样的,可以查询出两条不一致的记录,但是写法一在后台执行后返回的是两条一摸一样的记录,改成写法2后,查询出来的才是正确的

两条不一致的记录。子表要放在form的后面。

 

数据库和后台查询视图结果不一致

原文:https://www.cnblogs.com/yanghongyan/p/15217517.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!