mysql合并多条记录的单个字段去一条记录编辑_Mysql

测试用表结构:

复制代码 代码如下:

--
-- 表的结构 `tet`
--
CREATE TABLE IF NOT EXISTS `tet` (
`id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`url` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- 转存表中的数据 `tet`
--
INSERT INTO `tet` (`id`, `name`, `url`) VALUES
(1, '百度 ', 'http://www.baidu.com '),
(0, 'google ', 'http://www.google.com.hk '),
(3, '400电话 ', 'http://www.jb51.net ');

方法一:

复制代码 代码如下:

SELECT GROUP_CONCAT ( name ) name
FROM tet
WHERE 1 = 1
LIMIT 0 , 30

结果:
name 百度,google,400电话
GROUP_CONCAT还可以用 SEPARATOR 关键词指定连接符,sql语句如下:
SELECT GROUP_CONCAT ( url SEPARATOR " @ " ) url
FROM tet
WHERE 1 = 1
LIMIT 0 , 30
结果:
http://www.baidu.com@http://www.google.com.hk@http://www.jb51.net
方法二:

复制代码 代码如下:

SELECT GROUP_CONCAT ( name ) name
FROM tet
WHERE 1 = 1
GROUP BY id
LIMIT 0 , 30

结果:
google
百度
400电话

时间: 2024-10-30 13:22:45

mysql合并多条记录的单个字段去一条记录编辑_Mysql的相关文章

MySQL数据库将多条记录的单个字段合并成一条记录

MySQL数据库将多条记录的单个字段合并成一条记录 MySQL数据库将多条记录的单个字段合并成一条记录的操作是本文 我们主要要介绍的内容,接下来就让我们一起来了解一下这部分内容吧. 测试用表结构:  www.bitsCN.com CREATE TABLE IF NOT EXISTS `tet` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL, `url` varchar(255) NOT NULL ) ENGINE=InnoDB DEF

mysql批量更新多条记录的同一个字段为不同值的方法_Mysql

首先mysql更新数据的某个字段,一般这样写: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value'; 也可以这样用in指定要更新的记录: UPDATE mytable SET myfield = 'value' WHERE other_field in ('other_values'); 这里注意 'other_values' 是一个逗号(,)分隔的字符串,如:1,2,3 如果更新多条数据而且每条记录要更新

MySQL递归查询树状表的子节点、父节点具体实现_Mysql

简介:mysql5.0.94版本,该版本以及较高级的版本(5.5.6等等)尚未支持循环递归查询,和sqlserver.oracle相比,mysql难于在树状表中层层遍历的子节点.本程序重点参考了下面的资料,写了两个sql存储过程,子节点查询算是照搬了,父节点查询是逆思维弄的. 表结构和表数据就不公示了,查询的表user_role,主键是id,每条记录有parentid字段(对应该记录的父节点,当然,一个父节点自然会有一个以上的子节点嘛) 复制代码 代码如下: CREATE FUNCTION `g

java-Java修改数据库表时某字段出现重复值不能修改该记录怎么继续修改下一条记录

问题描述 Java修改数据库表时某字段出现重复值不能修改该记录怎么继续修改下一条记录 Java修改数据库表的company_name字段,此字段唯一,company_name这个字段值:前面有问号的去掉以后如果和已有的company_name重复了,就不更新或者删除,前面有问号的去掉以后如果和已有的company_name没重复就去掉问号.如:?北京金瓯鼎建筑装饰工程有限公司莱州分公司和北京金瓯鼎建筑装饰工程有限公司莱州分公司两个公司,把前面有问号的去掉问号,但是有重复的,遇到有重复的不用修改此

MySql正则 查找筛选字段为中文的记录

在MySql中使用正则可以达到事半功倍的效果,在php,asp中都有正则表达式这一说那么mysql是怎么样的呢,下面我拿一个实例 查找筛选字段为中文的记录sql语句. 如,简单看示例,使用mysql筛选出某字段中文的记录:  代码如下 复制代码 select * from table where not name regexp '^[1-9A-Za-z]'; 实例 数据库例: entry        name         cost -----------------------------

mysql记录根据日期字段倒序输出_Mysql

我们知道倒序输出是很简单的 select * from table order by id desc 直接这样就可以 那么现在的问题在于日期字段怎么来倒序输出 这里我们用到cast()来将指定的字段转换为我们需要的类型 如下是实际项目中的sql语句 select * from water where phoneNumber=@phoneNumber order by cast(date as datetime) desc 我们说学而不思则罔,我们来思考下深层次的内容. 经过查阅资料得知类型的转换

数据库-SQL表中如何增加一个自动的字段来描述此记录的更新时间

问题描述 SQL表中如何增加一个自动的字段来描述此记录的更新时间 如题,假设在表中建立一个F_Updatedatetime字段,当此记录被更新了,会自动将F_Updatedatetime置为更新记录的当前电脑时间? 解决方案 不需要什么自动字段,你在查询中插入getdate()就可以了. 解决方案二: 这通常需要用触发器来实现,在更新触发器中将F_Updatedatetime同时更新为当前时间. 解决方案三: 跟新这条记录是把这个字段也带上设值为new Date(); 解决方案四: 吧字段的值设

mysql-Mysql中如何获取一条数据中所有字段的名称和值

问题描述 Mysql中如何获取一条数据中所有字段的名称和值 有一个表User, 有字段id, name, password, mobile. 现在要获取User表中id=1的所有字段的名称保存为'key',其对应的值为'value' 例如有表中一条记录: id name password mobile 1 test 123 138100138000 现在要获取这一条记录并保存为 key value id 1 name test password 123 mobile 13800138000 解决

用hibernate在修改一条数据时没有覆盖旧的记录,反而添加了一条新纪录,怎么回事?

问题描述 用hibernate在修改一条数据时没有覆盖旧的记录,反而添加了一条新纪录,怎么回事? 我用的是mysql的数据库, jsp <%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <!DOCTYPE HTML> <div class="fo