2017-10-17 101 views
-2

我已经将MS访问数据库导入到MySQL。现在我试图提取一些数据,但是我的MySQL脚本无法完成它,只是在消息框中运行的类型。MySQL脚本运行无结果

编辑脚本,更容易理解。我认为我输入了一切正常,但无法提取数据。

我犯了一些严重错误还是有一些数据库问题?

在此先感谢。

SELECT 
    table1.fname, 
    table1.surname, 
    table1.ID, 
    table2.ID_stor, 
    table2.date1, 
    table2.date2, 
    table3.ind_code, 
    table3.dia, 
    table3.tret, 
    table4.op_name, 
    table4.side, 
    table4.protocol, 
    table4.op_date 
FROM table3 
    INNER JOIN table1 
    ON table1.ID = table3.ID 
    INNER JOIN gulejimas 
    ON table2.ID_stor = table3.ID_stor 
    INNER JOIN table4 
    ON table4.ID_stor = table3.ID_stor 
     WHERE table2.date1>='2007-01-01' And table2.date1<='2017-12-31'; 

回答

1

首先,您的表名称没有意义。另外,如果这是完整的查询并且没有WHERE子句,则您有效地在四个表上创建了一个交叉连接。如果每个表只包含4行,则结果将包含4 x 4 x 4 x 4 = 256行。如果每个表包含40行,则结果将包含2,560,000行。

为了解决这个问题,(或LEFT JOIN S如适用)与ON条款停止使用,加入并使用正确的INNER JOIN秒。