【问题标题】:Column concatenation returns "Null" Mysql - Php列连接返回“Null”Mysql - Php
【发布时间】:2014-12-29 22:58:35
【问题描述】:

我可以使用以下代码连接值

$sqlselect = "UPDATE billing_details SET SRF = CONCAT(Year, ID)";

但它会将结果值返回为“NULL”。请帮我解决这个问题

表结构:

Year *Varchar(5)*

ID *Int(10)*

SRF *Varchar(100)*

结果表:

年份 ID SRF

A 1 NULL

A 2 NULL

A 3 NULL

【问题讨论】:

  • 您的数据库字段SRF 中是否插入了null?提供一些示例数据。
  • yes null 被插入而不是 "A+10=A10"
  • 请将表格结构添加到您的问题中。
  • 我已经更新了,请检查问题
  • 执行 $sqlselect = "SELECT Year, ID from billing_details LIMIT 10";

标签: php mysql concatenation string-concatenation


【解决方案1】:

MySql CONCAT 函数是返回NULL 如果任何参数值如果为空值,请参阅吹

SELECT COCAT(NULL, 1) 

SELECT COCAT(1, NULL)

>NULL

如果您想在任何参数值为 null 时保留其他值,则使用 IFNULL() 函数排除 NULL 值

在您的查询中

$sqlselect = "UPDATE billing_details SET SRF = CONCAT(IFNULL(Year, ''), IFNULL(ID, ''))";

【讨论】:

  • 我已经尝试过你的代码,但没有任何改进......我认为可能还有其他问题
  • @AbdulHameed 检查了您的源代码,需要查看$sqlselect 变量查询以mysqli_query($con, $sqlselect) 运行
  • 我对 php 和 mysql 很陌生,请现在清楚地解释我需要做什么 Mr.Girish...
  • 你需要使用mysqli_query函数执行sql查询,你已经在第175行使用
  • 是的,我已经检查了连接状态
猜你喜欢
  • 2015-02-03
  • 1970-01-01
  • 2021-05-10
  • 2023-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多