标题和名称的 MySQL 字符串串联



>我有 2 张桌子 病人表 和 标题表

患者表 3 字段

PatientTableID    FirstName PatTitleLookup 
1                  John      (Value Stored as integer)
2                  Mary      (Value Stored as integer)

标题表 2 字段

ID  Title
1      Mr.
2      Ms.

我想连接标题和名字

所以我用这个

SELECT CONCAT(`PatientTable`.`PatTitleLookup`, '. ', `PatientTable`.`FirstName`)
FROM `PatientTable`
WHERE `PatientTable`.`PatientTableID` = 1

我得到 "1.约翰"而不是"约翰先生" "2.玛丽"而不是"玛丽女士">

请告诉我我确定我的语法是错误的

您需要联接title的表才能从中获取值。使用on了解数据应如何join

SELECT CONCAT(t.title, '. ', pt.FirstName)
FROM PatientTable as pt
join Title as t 
on pt.PatTitleLookup = t.id
WHERE pt.PatientTableID = 1

我还在这里为您的表使用了别名(as ptas t(,使以后在查询中的引用更短。

最新更新