Mysql使用另一个表来转换值

标签 mysql

用户

+-----+-------+----------+------------+
| id  |  name |  gender  |   computer |
+-----+-------+----------+------------+
| 1   |  ben  |     1    |       3    |
+-----+-------+----------+------------+

表格翻译

+-----+--------+
| id  |  trans |
+-----+--------+
| 1   |   boy  |
| 2   |   girl |
| 3   |   pc   |
| 4   |   mac  |
+-----+--------+

最终结果

+-----+-------+----------+----------+
| id  |  name |  gender  | computer |
+-----+-------+----------+----------+
|  1  |  ben  |  boy     | pc       |
+-----+-------+----------+----------+

我有 2 个表,一个是用户数据,另一个是翻译。

我想使用翻译表来翻译用户的性别和计算机的值 有人知道如何实现这一目标吗?

最佳答案

使用加入

查询

 select 
   t1.`id`,
   t1.`name`,
   t2.`trans` as `gender`,
   t3.`trans` as `computer`
from `user` t1
join `translate` t2
on t1.`gender` = t2.`id`
join `translate` t3
on t1.`computer` = t3.`id`;

关于Mysql使用另一个表来转换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48236763/

相关文章:

mysql - 无法打开连接 [n/a] java.sql.SQLException : No suitable driver found

php - 查找 sql 值最新变化的更好方法

php - 如何在 codeigniter 中连接这些表

mysql Timediff() 函数返回 0.0000

mysql - 对每对求和 mysql 结果

php - Magento - 具有 1000 种颜色选项的可配置产品会减慢产品详细信息页面的加载时间

mysql - 如何解决高级过滤器问题,使用 MySQL 查询

mysql - 如果字符串中存在某个字符,则SQL取下最后一个字符

mysql - 按值大于0的列分组

mysql - 在 SQL 中迭代和更新表