我在数据库2中有相同的表 - 让我们说ARTICLE和ARTICLE_BACKUP.它们有不同的记录,但所有列都相同.
我可以加入他们并在C#中读入数据集
SELECT * from ARTICLE A INNER JOIN ARTICLE_BACKUP A2 ON A.ID=A2.ID
Run Code Online (Sandbox Code Playgroud)
在SQL中处理连接表时,使用表名和列名等
ARTICLE_BACKUP.NAME
Run Code Online (Sandbox Code Playgroud)
所以你永远不会在不同的表中混合具有相同名称的列.
当您将其读取到数据集时,表名称已消失.ARTICLE.NAME将只调用NAME,ARTICLE_BACKUP.NAME在大多数情况下称为NAME1 - "1"被添加到名称中,
但是如果NAME1列已经存在于sql查询中,如下所示:
SELECT A.NAME,A.NAME1,A.NAME11,B.NAME,B.NAME1,B.NAME11,C.NAME,C.NAME1,C.NAME11,FROM A INNER JOIN B ON A.ID = B.ID INID JOIN C on A.ID = C.ID
B和C表中列的数据集中列的名称是什么?
我可以检查一下,但有人可以说规则吗?
在SQL查询中使用列来了解其在数据集中的名称时,是否有100%的工作方式?
"在SQL查询中使用列来知道数据集中的名称时,是否有100%的工作方式?"
是的,不要使用select *
.手动键入所需的列,您可以为它们添加别名.
例
SELECT A.Column1 as AColumn1, A2.Column1 as A2Column1 from ARTICLE A INNER JOIN ARTICLE_BACKUP A2 ON A.ID=A2.ID
Run Code Online (Sandbox Code Playgroud)
然后在您的C#代码中,您将通过其别名来访问列.