我是mySQL的新手,希望得到一些帮助。我有一张桌子以下列方式摆放:
TASK
task_id *
tasktype_id (FK)
proj_id (FK)
empl_id (FK)
taskstat_id (FK)
hrs
notes
如果我执行这样的查询,结果会打印出来,但会打印出对外键的数字引用。
SELECT * AS task FROM task
INNER JOIN tasktype ON tasktype.tasktype_id = task.tasktype_id
WHERE taskstat_id = 1";
但是我想在结果表中打印字段名而不是外键的字段号。有任何想法吗?这就是我尝试过的,但没有任何运气。
SELECT task.task_id,
tasktype.tasktype_id,
project.proj_id,
employee.empl_id,
taskstatus.taskstat_id,
task.hrs,
task.note
FROM task, tasktype, project, employee, taskstatus
INNER JOIN tasktype ON tasktype.tasktype_id = task.tasktype_id
WHERE task.taskstat_id = 1";
答案 0 :(得分:0)
好吧,假设相关表(列名)中的“字段名称”被称为...名称(我不知道您所连接表格的结构)
select t.task_id,
tt.name, //or tt.description, or whatever
p.name, //same
e.name, //same
ts.name, //same
t.hrs,
t.note
FROM task t
inner join tasktype tt on tt.tasktype_id = t.tasktype_id
inner join project p on p.proj_id = t.proj_id
inner join employee e on e.empl_id = t.empl_id
inner join taskstatus ts on ts.taskstat_id = t.taskstat_id
where t.taskstat_id = 1