PHP+MYSQL如何在查询的结果集中前后加上字符。

ASP中,语句可以这样写。selectidfrom商品分类where','+所有父ID+','like'%,"&spid&",%'我里面的数据如图:PHP中要如何写呢?... ASP中,语句可以这样写。
select id from 商品分类 where ','+所有父ID+',' like '%,"&spid&",%'
我里面的数据如图:
PHP中要如何写呢?
展开
 我来答
百度网友a19d193
2015-07-23 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1418万
展开全部

有两种方式进行字符添加:

第一种:在PHP中遍历数据,然后对字段进行字符串操作从而达到目标

第二种:直接在SQL语句中使用函数对字段的结果进行处理


例1- PHP遍历方式

//假设$rows是结果集
foreach ($rows as &$row) {
    $row['column'] = sprintf("前面%s后面", $row['column']); //方法1.1
    $row['column2'] = "前面{$row['column2]}后面"; //方法1.2
}

foreach语句中的&$row表示此时是对原始数据的引用,因此在循环中修改$row的值之后$rows中的数据会相应变化。


例2- SQL语句

SELECT 
    CONCAT("前面", IF(`column` IS NULL, '', `column`), "后面") AS `column` 
FROM tablename

注意CONCAT方法中使用了IF语句进行NULL值的判定,根据需要可以自行更改。

CONCAT方法可以有任意个参数,但是任何一个参数的值为NULL则最后的结果为NULL,所以有可能要对NULL进行处理。

这是二胡
2011-08-28 · TA获得超过209个赞
知道小有建树答主
回答量:128
采纳率:100%
帮助的人:65.5万
展开全部
select id from [table] where concat(',', [所有父ID], ',') like ('%XXX%');

#CONCAT 为mysql函数
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式