Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.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的结果:[从mytable中选择*作为t]?_Mysql_Sql - Fatal编程技术网

如何获取MySQL的结果:[从mytable中选择*作为t]?

如何获取MySQL的结果:[从mytable中选择*作为t]?,mysql,sql,Mysql,Sql,我有这样一个SQL: SELECT m1.id1,m2.user,m3.pass,m4.cap,m5.test FROM (SELECT * FROM mytable) AS m1, (SELECT * FROM mytable) AS m2, (SELECT * FROM mytable) AS m3, (SELECT * FROM mytable) AS m4, (SELECT * FROM mytable) AS m5 WHERE m1.id1=m2.id2 AND m1.id1=m3.i

我有这样一个SQL:

SELECT m1.id1,m2.user,m3.pass,m4.cap,m5.test
FROM
(SELECT * FROM mytable) AS m1,
(SELECT * FROM mytable) AS m2,
(SELECT * FROM mytable) AS m3,
(SELECT * FROM mytable) AS m4,
(SELECT * FROM mytable) AS m5
WHERE m1.id1=m2.id2 AND m1.id1=m3.id3 AND m1.id1=m4.id4 AND m1.id1=m5.id5;
表mytable很大,但我需要从中获取所有信息,并且我需要多次使用子查询,问题是:如何从mytable保存querySELECT*的结果,如:

SELECT m1.id1,m2.user,m3.pass,m4.cap,m5.test
FROM
(SELECT * FROM mytable) AS m1,
m1 AS m2,
m1 AS m3,
m1 AS m4,
m1 AS m5
WHERE m1.id1=m2.id2 AND m1.id1=m3.id3 AND m1.id1=m4.id4 AND m1.id1=m5.id5;
非常感谢。

您应该使用加入:


正确的方法是使用JOIN并让优化器完成其工作:

SELECT m1.id1,m2.user,m3.pass,m4.cap,m5.test
  FROM mytable as m1
  JOIN mytable as m2 ON m1.id1=m2.id2
  JOIN mytable as m3 ON m1.id1=m3.id3
  JOIN mytable as m4 ON m1.id1=m4.id4
  JOIN mytable as m5 ON m1.id1=m5.id5 ;

使用子查询从表中选择所有数据是没有意义的…

您是科罗拉多州最快的!
SELECT m1.id1,m2.user,m3.pass,m4.cap,m5.test
  FROM mytable as m1
  JOIN mytable as m2 ON m1.id1=m2.id2
  JOIN mytable as m3 ON m1.id1=m3.id3
  JOIN mytable as m4 ON m1.id1=m4.id4
  JOIN mytable as m5 ON m1.id1=m5.id5 ;