Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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
SQL从2表中选择具有相同名称的2列_Sql - Fatal编程技术网

SQL从2表中选择具有相同名称的2列

SQL从2表中选择具有相同名称的2列,sql,Sql,我提出这个问题: Select type from client, store etc... 两个表中都有type字段,因为我只能选择一个customer表?将表名放在前面 Select client.type from client join store on ... 使用表名。如果希望类型来自表存储,请使用: Select store.type from client, store etc... 如果两者都需要,则必须使用别名: select client.type as clien

我提出这个问题:

Select type from client, store etc...

两个表中都有type字段,因为我只能选择一个customer表?

将表名放在前面

Select client.type 
from client
join store on ...

使用表名。如果希望类型来自表存储,请使用:

Select store.type from client, store etc...

如果两者都需要,则必须使用别名:

select client.type as clienttype, store.type as storetype from client, store etc...
始终为查询中的所有列指定别名是至关重要的。这只是一种良好的做法。它使维护更容易


此外,永远不要使用隐式联接。它们是一种SQL反模式,它们会导致意外交叉连接出现问题,您无法判断是否真的需要交叉连接,或者这是一种意外情况,而且它们更难维护,特别是当您最终将隐式内部连接和显式外部连接混合在一起时,甚至可能会导致错误的结果

问题一点也不清楚。客户别名来自哪里?OP提到他加入的一个名为customer的表-可能是一个拼写错误,他是一个客户。更新了答案。谢谢你;不要鼓励使用隐式联接。
Select client.type, store.type,  
from client
join store on store.id = client.storeID