Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.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别名_Mysql_Sql_Yii - Fatal编程技术网

Mysql 子查询的SQL别名

Mysql 子查询的SQL别名,mysql,sql,yii,Mysql,Sql,Yii,我对以下查询有问题: SELECT * FROM ( (SELECT * FROM Images WHERE create_user_id=:user_id) RIGHT INNER JOIN (SELECT * FROM PhotoGallery) ON id=centity_id ) ORDER BY centity_id; 我得到了1248-每个派生表都必须有自己的别名错误,我知道我需要给这些表别名,但无论我做什么,我总是得到错误。谁能帮我解决这个问题?多谢各位 试

我对以下查询有问题:

SELECT * FROM (
  (SELECT * FROM Images 
   WHERE create_user_id=:user_id) RIGHT INNER JOIN 
  (SELECT * FROM PhotoGallery) ON id=centity_id
 )
 ORDER BY centity_id;
我得到了1248-每个派生表都必须有自己的别名错误,我知道我需要给这些表别名,但无论我做什么,我总是得到错误。谁能帮我解决这个问题?多谢各位

试试这个

选择* 从图片我右键连接 i.id上的照片库p=p.centity_id 其中i.create\u user\u id=:user\u id 按百分位订购
根据您的DDL和所需的输出联接可能是RIGHT、INNER或LEFT,但不是RIGHT-INNER联接

您的子查询需要别名。比如:

SELECT * FROM (
  (SELECT *
   FROM Images 
   WHERE create_user_id=:user_id
  ) i RIGHT INNER JOIN 
  PhotoGallery pg
  ON i.id=pg.centity_id
 )
 ORDER BY centity_id;

我从来没有听说过支持右内联接的dbms。选择其中一个

内部连接,或 右外连接,或 右连接,其含义应与右外部连接相同。
如果您正在执行select*,则不需要执行子查询

SELECT * FROM Images 
  RIGHT OUTER JOIN PhotoGallery ON id=centity_id
WHERE create_user_id = :user_id
ORDER BY centity_id;

我认为您必须为子查询提供表别名,例如从图像中选择*,其中create\u user\u id=:user\u id asTableA@kokoseq不客气。如果有帮助的话,请考虑一下答案。快乐编码。