带有修剪的mysql concat

标签 mysql concatenation

我有一个表,其中包含标记为地址 | 的单元格中的一堆地址。城市。 我正在尝试将完整地址合并为通用的“地址、城市”格式。

有时,在我的数据库中,我的位置单元格之一是空的。因此,我在我的 concat 行中执行了一个 IFNULL,但我以前导或尾随 ',' 结尾。 我已尝试将“修剪”功能与我的连接一起使用,但有时仍会出现尾随“,”。

我是这样写的

SELECT TRIM(BOTH ',' FROM CONCAT(IFNULL(address,''), ', ', IFNULL(city,''))) FROM locals

知道为什么我会有这种行为吗?有没有更好的方法来构建我的 concat 语句?

最佳答案

我认为您的查询只是在 BOTH 语句中的逗号后缺少一个空格。这似乎对我有用

SELECT TRIM(BOTH ', ' FROM CONCAT(IFNULL(address,''), ', ', IFNULL(city,''))) FROM locals;

关于带有修剪的mysql concat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1094622/

相关文章:

mysql - Shield UI 网格日期 : how to format

mysql - 如何增加 App Engine 请求处理程序的时间,因为它会在 60 秒内中止每个请求?

performance - GWT 字符串连接运算符 + 与 stringbuffer

c# - 多个下拉列表更改每个表 C# 和 MySql 查询

javascript - 我如何在脚本中分配 php 定义常量值

mysql - 选择与建议的唯一索引冲突的 MySQL 记录

php - 托管和本地生产服务器之间的双向 mySQL 数据库同步

mysql - 连接mysql中具有相似列的两个表

c++ - 关于非类类型错误的问题?

mysql - 获取动态列值