SQL innerjoin将整数转换为文本

时间:2018-04-30 14:33:17

标签: php mysql sql

我有一个 SQL数据库directorydb ,它包含两个表:部门和人员。

部门

Department ID (INT, PK, auto-incrementing, deptID)
Name (VARCHAR(50), deptName) 
Phone Number (VARCHAR(20), deptPhone)
Email (VARCHAR(50), deptEmail)
Office Location (VARCHAR(100), deptOffice)

Person ID (INT, PK, auto-incrementing, persID)
Email Address (VARCHAR(50), persEmail)
Password (VARCHAR (50), persPassword)
First Name (VARCHAR(50), persFName)
Last Name (VARCHAR(50), persLName)
Phone Number (VARCHAR(20), persPhone)
Office Location (VARCHAR(100), persOffice)
Department (INT, persDept)

我需要在 PHP 文件中列出人员表中的所有人,但我需要替换 persDept 中的整数使用部门表中的纯文本 deptName

我很感激任何帮助!

2 个答案:

答案 0 :(得分:1)

这是一个简单的连接。使用显式的INNER JOIN语法: -

SELECT a.`Person ID`,
    a.`Email Address`,
    a.`Password`,
    a.`First Name`,
    a.`Last Name`,
    a.`Phone Number`,
    a.`Office Location`,
    b.`Name` AS deptName
FROM persons a
INNER JOIN departments b
ON a.Department = b.`Department ID`

答案 1 :(得分:0)

只需应用这样的简单连接:

Select b.name, a.* from departments a join persons b on a.departmentid=b.departmentid