SQL - 显示名称而不是 ID [英] SQL - Displaying names instead of ID

查看:90
本文介绍了SQL - 显示名称而不是 ID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两张桌子

rankID |姓名

  • 1 |新
  • 2 |学习者
  • 3 |经验丰富
  • 4 |亲

另一个包含所有用户信息和密码之类的东西

And another with all the user info and passwords and stuff

id |用户名 |rankID

  • 1 |你好 |3
  • 2 |嘿|3

我已经走到这么远了,所以我可以显示他们的等级编号,但我想显示等级名称.我怎样才能做到这一点?我尝试了很多东西,但我不太擅长 sql 和它的 php 部分.

I have come so far so I can display their rank number, but I want to display the rank name. How can I do that? I have tried a lot of things but I'm not so good at sql and the php part of it.

这是我用来显示排名的代码

This is the code I use to display the rank number

//Get rankID
$query = "SELECT rankID FROM users WHERE id = '$userId'";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$rank = $row['rankID'];

并显示等级编号:

Rank: <?php echo $rank; ?>

推荐答案

简单的JOIN查询:-

"SELECT rank.name as rank_name,users.rankID as rankID from users LEFT JOIN rank ON rank.rankID = users.rankID WHERE id = '$userId'"

然后之后:-

$query = "SELECT rank.name as rank_name,users.rankID as rankID from users LEFT JOIN rank ON rank.rankID = users.rankID WHERE id = '$userId'";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);

做:-

$rank = $row['rankID'];
$rank_name = $row['rank_name'];

Rank: <?php echo $rank; ?>
RankName: <?php echo $rank_name; ?>

$rank_data = $row;
Rank: <?php echo $rank_data['rankID']; ?>
RankName: <?php echo $rank_data['rank_name']; ?>

不是:- 还有很多其他可能的方法,其他程序员也在评论和回答中列出了这些方法.

Not:- lot of other possible ways are there which are listed by other programmers in comment and answer as well.

这篇关于SQL - 显示名称而不是 ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆