SQL查询获取状态,然后是城市和地址以及zip

时间:2015-05-21 12:26:43

标签: mysql sql

我试图以这种格式从数据库中获取数据:

    state
    |__city
    |  |__address
    |  |__zip

我想要所有地址和邮政编码连接起来的所有独特州和城市。

以下是我尝试的内容:

SELECT
  state,
  GROUP_CONCAT('(',address,';)') AS address,
  GROUP_CONCAT('(',zip,';)') AS zip
FROM location
WHERE   
  sername='ABC@gmail.com'
GROUP BY state,city

更新
连接有问题。我想要这种格式的数据:

state        city     address               zip     
Karnataka   BANGALORE   (sdbsbd);(dsdsds);  NULL

我正在获取数据

state        city     address               zip     
Karnataka   BANGALORE   (sdbsbd);,(dsdsds); NULL 

我不想在地址中使用逗号:

;,

1 个答案:

答案 0 :(得分:1)

我认为你需要GROUP_CONCAT()函数中的SEPERATOR参数。 https://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat

SELECT state, GROUP_CONCAT('(',address,';)' SEPARATOR '') as        
address,GROUP_CONCAT('(',zip,';)' SEPARATOR '') as zip FROM location Where   
username='ABC@gmail.com' GROUP BY state,city"