SQL:SELECT*FROM方法

c#

只是出于好奇,究竟是如何SELECT * FROM table WHERE column = "something"工作的?

基本原理是否for/foreach与具有以下if条件的循环相同:

for (iterator)  
{
   if(condition)
      //print results
}

如果我正在处理 100 条记录,那么在获取我想要的所需数据方面,这两种方法之间是否会有相当大的性能差异?

回答

SQL 是第 4 代语言,这使它与编程语言非常不同。不是告诉计算机如何做一些事情(通过行循环,比较列),你告诉计算机怎样做(获得匹配条件的行)。

DBMS 可以使用也可以不使用循环。它也可以使用散列和桶,对数据集进行预排序,等等。可以自由选择。

在技​​术方面,您可以在数据库中提供索引,以便 DBMS 可以查找键以快速访问行(就像在电话簿中快速查找姓名)。这为 DBMS 提供了如何访问数据的选项,但它仍然可以自由使用完全不同的方法,例如按顺序读取整个表。


以上是SQL:SELECT*FROM方法的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>