Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 连接两个表并显示属性名而不是id_Mysql - Fatal编程技术网

Mysql 连接两个表并显示属性名而不是id

Mysql 连接两个表并显示属性名而不是id,mysql,Mysql,精选列表表 chl_element chl_label chl_dependent_value chl_value country india IN state karnataka IN KA city bangalore KA BNG elo_state elo_country elo_city

精选列表表

chl_element  chl_label    chl_dependent_value  chl_value
country      india                             IN
state        karnataka    IN                   KA
city         bangalore    KA                   BNG  
elo_state  elo_country  elo_city
KA         IN           BNG
用户表

chl_element  chl_label    chl_dependent_value  chl_value
country      india                             IN
state        karnataka    IN                   KA
city         bangalore    KA                   BNG  
elo_state  elo_country  elo_city
KA         IN           BNG

我如何连接这两个表并显示
国家
名称,即印度而不是
中的
…我不想使用子查询,因为在搜索它时会产生问题

您必须将users表与choicelist表连接起来。还需要指定要加入的属性。例如,如果users表包含列username,则可以使用:

SELECT
  users.username,
  c1.chl_label AS country,
  c2.chl_label AS state,
  c3.chl_label AS city
FROM
  users LEFT JOIN choicelist c1
  ON users.elo_country=c1.chl_value AND c1.chl_element = 'country'
  LEFT JOIN choicelist c2
  ON users.elo_state=c2.chl_value AND c2.chl_element = 'state'
  LEFT JOIN choicelist c3
  ON users.elo_cITY=c3.chl_value AND c3.chl_element = 'city'

在这里,我使用choicelist多次加入用户表,并使用多个别名(c1 c2 c3)。

尝试一个join语句,如果遇到错误,请将其发布请在stackoverflow中格式化此I am new