Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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_Mysql_Table Alias - Fatal编程技术网

错误消息:非唯一表/别名MySQL

错误消息:非唯一表/别名MySQL,mysql,table-alias,Mysql,Table Alias,我正在尝试使用男性id上的左连接将来自ButikkkData2的sap_id插入energy_stage_ext2 这是我的疑问: insert into energi_stage_ext2 ( maale_id, maale_date, kwh_t, lev_id, konsept, name, slag, sap_id ) select butikkdata2.sap_id from butikkdata2 left

我正在尝试使用男性id上的左连接将来自ButikkkData2的sap_id插入energy_stage_ext2

这是我的疑问:

insert into energi_stage_ext2  ( maale_id, maale_date, kwh_t, lev_id, 
                                 konsept, name, slag, sap_id )
select butikkdata2.sap_id 
  from butikkdata2 left join butikkdata2
          ON energi_stage_ext2.maale_id=butikkdata2.maale_id;
但是我得到了错误消息:不是唯一的表/别名


有什么想法吗?

你从ButikkkData2开始做
,然后加入butikkdata2
,然后你问
energi_stage_ext2.maale_id=ButikkkData2.maale_id

它如何知道您想要哪个
数据2
?从中的那个还是加入中的那个

您需要为其中一个(或两个)提供别名

INSERT INTO energi_stage_ext2 (maale_id, maale_date, kwh_t, lev_id, konsept, name, slag, sap_id)
SELECT bu1.sap_id 
FROM butikkdata2 AS bu1
LEFT JOIN butikkdata2 AS bu2 ON energi_stage_ext2.maale_id=bu2.maale_id;
现在,我把它们命名为
bu1
bu2
。确保在查询中引用了正确表中的正确字段


另外,我不确定你是否真的能做到
energi\u stage\u ext2.maale\u id=bu2.maale\u id
。您没有在查询中加入
energi\u stage\u ext2
。您可能需要先加入,但我不是100%确定。

从butikkdata2左起加入butikkdata2
。它怎么知道你想要哪一个?你需要给其中一个(或两个)一个别名。@RocketHazmat你应该以回答者的身份发布你的假设是正确的,假设我不能做-'energi_stage_ext2.maale_id=bu2.maale_id'。这在on子句中给了我一个未知的列。嗯,我需要用另一种方式来处理这个问题。谢谢。@user2718837:我的建议是现在只关注
选择
。使其正常工作,然后将
插入到
中。请注意,
SELECT
返回的字段数应与插入的字段数相同。