Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL连接-4个表或使用视图_Mysql_Sql - Fatal编程技术网

Mysql SQL连接-4个表或使用视图

Mysql SQL连接-4个表或使用视图,mysql,sql,Mysql,Sql,我不是SQL程序员,但是我的导师问我们,“视图”如何帮助我们从四个不同的表返回最近项目的相关数据,而不是使用联接来联接这四个表。我的理解是,我仍然必须加入表格。在这方面,我想不出有任何其他方式能对这一观点有所帮助 我假设即使创建一个视图,我仍然必须加入表,这对吗 我是否接受过SQL方面的低水平教育?视图的好处是,您可以在使用视图的查询中抽象出连接,而不必在每个查询中都包含连接-视图只保存这些连接以便编写更干净的代码 因此,是的,您仍然可以编写联接,但您可以编写一次而不是每次。视图的好处是,您可以

我不是SQL程序员,但是我的导师问我们,“视图”如何帮助我们从四个不同的表返回最近项目的相关数据,而不是使用联接来联接这四个表。我的理解是,我仍然必须加入表格。在这方面,我想不出有任何其他方式能对这一观点有所帮助

我假设即使创建一个视图,我仍然必须加入表,这对吗


我是否接受过SQL方面的低水平教育?

视图的好处是,您可以在使用视图的查询中抽象出连接,而不必在每个查询中都包含连接-视图只保存这些连接以便编写更干净的代码


因此,是的,您仍然可以编写联接,但您可以编写一次而不是每次。

视图的好处是,您可以在使用视图的查询中抽象出联接,而不必在每个查询中都包含联接-视图只会保存这些联接,以便编写更干净的代码


因此,是的,您仍将编写联接,但您将编写联接一次而不是每次。

视图只是一个保存的查询。视图有助于让非技术用户能够简单地查询视图,而不是开发他们自己的特殊查询(这可能是不正确的)。这类似于数据仓库的概念,但从实现、维护、功能和性能角度来看,显然有很大不同

正如你提到你的学生,我会进一步解释。如果您想查询数据库中以前没有回答过的问题的答案,并且很可能不会以同样的方式再次被询问,您可以编写一个临时查询。这些查询可能简短而简单。如果您不断地反复查询同一事物,您可以创建一个视图并简单地查询该视图。因此,如果一个视图只是一个保存的查询,那么什么是存储过程以及它有什么不同呢。很高兴你这么问。存储过程是由SQL server预编译的一组SQL语句。它们通常较长且相对复杂。此外,在视图中,您只是选择数据,而在存储过程中,您将操作数据


我知道我的回答有点超出了你教授的问题范围,但我希望它能为你提供一些话题,让你在以后的学术或职业生涯中开始研究:)

视图只是一个保存的查询。视图有助于让非技术用户能够简单地查询视图,而不是开发他们自己的特殊查询(这可能是不正确的)。这类似于数据仓库的概念,但从实现、维护、功能和性能角度来看,显然有很大不同

正如你提到你的学生,我会进一步解释。如果您想查询数据库中以前没有回答过的问题的答案,并且很可能不会以同样的方式再次被询问,您可以编写一个临时查询。这些查询可能简短而简单。如果您不断地反复查询同一事物,您可以创建一个视图并简单地查询该视图。因此,如果一个视图只是一个保存的查询,那么什么是存储过程以及它有什么不同呢。很高兴你这么问。存储过程是由SQL server预编译的一组SQL语句。它们通常较长且相对复杂。此外,在视图中,您只是选择数据,而在存储过程中,您将操作数据


我知道我的回答有点超出了你教授的问题范围,但我希望它能为你带来一些话题,让你在以后的学术或职业生涯中开始研究:)

视图也有助于确保内部优化,并且索引可以应用于视图列(有限制),但每次执行视图时,创建视图的连接也会很有用。它们作为抽象层非常有用,特别是对于只读任务。很好,这就是我所想的,但对SQL来说是新的(至少更高级的用法),我不想在没有确认的情况下固执地回答。谢谢!视图也可以用于确保内部优化,并且索引可以应用于视图列(有限制),但是,每次执行该视图时,创建视图的连接也将如此。它们作为抽象层非常有用,特别是对于只读任务。很好,这就是我所想的,但对SQL来说是新的(至少更高级的用法),我不想在没有确认这一点的情况下固执地回答。谢谢!视图的另一个用例是对象权限…将用户挡在表之外并只允许访问可能仅从表中选择某些信息的视图并不完全罕见。当涉及任何PII或HIPAA等时,这尤其有用。一个视图的另一个用例是对象权限…将用户挡在表之外并只允许访问可能仅从表中选择某些信息的视图并不完全少见。当涉及任何PII或HIPAA等时,这尤其有用。