我有一个关于查询在MySQL中的问题。我做了2个表,表1和表2.在表1中有2行数据,它在表2中有2行数据,每个表有3个字段。在这种情况下,我想使视图的查询:这是一个错误?或者错误?或者一个错误的查询?
create view point as select table2.field2 from table1, table2;
我认为它会显示在表2数据的地方有两个数据。但结果是显示4行数据,其中每2行是相同的数据。 当我试图删除表1中的1行,它的意思是删除1个数据,我试着输入上面的查询。结果是正确的,它在table2中显示2行数据。为什么它在table1中有1行数据时正确,当table1有2行数据时没有。请如何解决它?或者我的错误查询。
您的'from'或'Where'子句中没有任何连接条件。基本上,你所执行的是一个笛卡尔连接,在你的'from'子句的每个其他表中的每一行都会显示一行。基本上你看到的是2行* 1行= 2行。 2行* 2行= 4行。您需要为表添加连接条件,例如将主键链接到外键。 – Rook
以前感谢。现在我知道你什么时候像上面的例子那样显示计数。但实际上,我的2个表没有任何连接条件。我只想在table2和table1中取一个值,并在新的视图中显示新的视图。现在我记得,使用视图必须有2个或更多表之间的关系。感谢Rook。 –