> 백엔드 개발 > PHP 튜토리얼 > 多表联合查询方案

多表联合查询方案

WBOY
풀어 주다: 2016-06-23 14:04:54
원래의
1059명이 탐색했습니다.

   现在我是做一个功能,就是要从所有的凭证里查询数据,这些凭证是销售凭证这些,一共有7个凭证,14个表。请问大家,是联合查询好,还是有其它更好的方案。


回复讨论(解决方案)

按查询需求创建若干视图

按查询需求创建若干视图

其实我需要的就是从这几十个表中查询到的。你是说分几次查询吗?

按查询需求创建若干视图

一次性查询这些表,是不是效率会很慢。

你先翻阅数据库相关资料,弄明白什么是“视图”
于是你会知道
计算机数据库中的视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

由于视图在创建时就和设计的表和字段进行了关联,因此就不像普通查询那样翻来覆去的去找
这样自然也就快了

你说的视图的定义,我在网上搜索时,有看过很多遍了。其实我就是不明白,我们直接写SQL的表合并语句和在视图那里写有什么区别,如果在视图那里写只是因为SQL语句存在数据库方便调用的话,那我觉得视图没有多大的作用。不过你刚刚说“由于视图在创建时就和设计的表和字段进行了关联,因此就不像普通查询那样翻来覆去的去找
这样自然也就快了”。这个可能会提高查询的效率。

联合查询是数据库的基本用法, 不用太担心效率问题. 关键是你要建好合理的索引

联合查询是数据库的基本用法, 不用太担心效率问题. 关键是你要建好合理的索引
其实我要查询的这些表,是很少直接关联的。比如:销售凭证只和销售凭证明细有关联,收款凭证和它的明细有关联,像这种一对一对的表有7对这么多。我是要从这些凭证表中汇总一些信息。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿