我的 sql 表中有两列存储电话号码。我已经显示了由“,”分隔的两个数字,如果如果将两个数据与“,”连接以进行显示,我面临的问题是 - 当第一列为空白时,我得到的输出为“,xxxxxxxxxx”,当第二列是空白的,我得到的输出是“xxxxxxxxx”,只有当两列都包含像“xxxxxxxxx,xxxxxxxxx”这样的数据时,我才能得到完美的输出。
当任一列数据丢失时,如何删除多余的“,”!
请帮忙
谢谢
桑迪普
这会成功的。
$ret = implode(',', array_filter(array($value1, $value2)));
当可以在 MySQL Query 中解决它时,为什么要检查使用 PHP?
您可以在使用CONCAT_WS提取数据时直接在查询中执行此操作。
SELECT CONCAT_WS( ',', NULL , 'col2' ) ;
输出: col2
但是,这仅在将空字段设置为 时才有效NULL
。如果您的空字段不为 NULL,您可以进一步设置IF
条件以将该参数设置为NULL
好像字段为空,例如
SELECT CONCAT_WS( ',', IF(col1 = '', NULL, col1) , 'col2' ) ;