mysql - SQL 连接和重命名列

标签 mysql sql join inner-join renaming

如果我有三个表,例如 dogcatanimal,其中 animal 的属性是 name,如何加入 dogcat 并返回两个名称?

结构看起来像这样:

---Dog---
AnimalID char(9)
ChasesID char(9)


---Cat---
AnimalID char(9)


--Animal--
AnimalID char(9)
Name     char(20)

我想在ChasesID上加入DogCat(引用Cat表中的AnimalID)并从Animal返回两种动物的名称>.

最佳答案

我不确定你想用这种方式做什么,但如果你只想获取动物的名字,你可以尝试这样的事情:

SELECT Animal.Name AS Name
FROM (SELECT AnimalID FROM Cat
      UNION
      SELECT AnimalID FROM Dog) AS AnimalsUnion
LEFT JOIN Animal
       ON Animal.AnimalID = AnimalsUnion.AnimalID

应该可以解决问题..

关于mysql - SQL 连接和重命名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26207475/

相关文章:

c# - 如何将 C# 中的 2 个 SQL 过程的结果附加到单个 CSV 文件中?

php - Mysql一次获取列值

sql - 在多个表上执行条件 mysql 连接的最有效方法? (Yii php框架)

php - MySQL 查询获取 post_id 和特征图片 URL

php - 为什么我不应该在 PHP 中使用 mysql_* 函数?

php - 在 PHP 页面上获取 SQL ID 并将其传递给另一个 PHP 页面

mysql - 如何从重复行中清空产品名称

sql - 按条件分组

php - 单击链接时显示 My SQL 查询

mysql - 按月和年分组,从另一个表中计数