Heim  >  Artikel  >  Backend-Entwicklung  >  用mysql内置函数处理结果好还是取出来再处理好

用mysql内置函数处理结果好还是取出来再处理好

WBOY
WBOYOriginal
2016-06-06 20:37:511190Durchsuche

mysql也有丰富的字符串处理函数,虽然不全但是也够用了。
我是想问,当我取数据时,是用mysql处理完再取出来还是原封不动地取出来交给PHP来做后续处理。
两者之间性能上孰优孰劣呢?

回复内容:

mysql也有丰富的字符串处理函数,虽然不全但是也够用了。
我是想问,当我取数据时,是用mysql处理完再取出来还是原封不动地取出来交给PHP来做后续处理。
两者之间性能上孰优孰劣呢?

题主的问题可以扩展得更宽泛一点,不管是mysql,还是sql server,oracle都会遇到题主类似的问题。

首先说下我的答案:没有哪种方法更好的说法,两种做法各有自己的使用场景。

一、用sql语句写存储过程(store procedure,以下简称sp)来处理数据

  • 好处:快
  • 缺点:难维护,数据库迁移什么的要带着sp一起走
  • 应用场景:数据规模巨大的话,一定要写sp。我在微软实习的时候,我那个Team是做BI的,数据量大,数据处理全走sp。.Net这层只负责传递一下数据而已。

二、将数据query到后端处理

  • 好处:易维护
  • 缺点:相对直接用sp慢一点
  • 应用场景:如果数据库数据量不大,用不用sp其实没有太大差别。

你做一个系统要知道瓶颈在哪儿。如果瓶颈在数据量大,query慢上,那就优化数据库那块,写写sp。如果数据量小,那系统的瓶颈绝对在其他地方,比如网络传输慢等。

php处理……mysql能省则省……

mysql的责任是以最快的速度取出最大限度能够给出的结果

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn