在MySQL中,如果想实现将分组之后的多个数据合并到一列,可以使用group_concat函数,如下图所示: 但是,在Sybase中没有这样的函数(别问我为什么使用Sybase,因为公司用的Sybaseo(╯□╰)o).因为我的Sybase是ASE的,使用变量累计的方法实现了该功能.憋说话,看代码: IF OBJECT_ID('#test') IS NOT NULL drop table #test go CREATE TABLE #test( id int null ,comment varc
Mysql:实现分组查询拼接未分组同一字段字符group_concat() MySQL中,如果想实现将分组之后的多个数据合并到一列,可以使用group_concat函数,如下图所示: 在oralce中实现:select name,wm_concat(content) from test group by name; Sybase(ASA)可以用LIST函数; Sybase(ASE)用变量累计的方法;
SELECT oam.id , GROUP_CONCAT(oacm.name) category FROM om_article_manage oam LEFT JOIN om_article_category_relation oacr ON oacr.article_id = oam.id LEFT JOIN om_article_category_manage oacm ON oacm.id = oacr.category_id GROUP BY oam.id ORDER BY oacm.
percona有一篇blog: The power of MySQL GROUP_CONCAT 比较详细地介绍了GROUP_CONCAT函数的用法.简单地翻译了一下. 假设你有4名工程师,这周他们为6名客户解决了15个问题.他们之间彼此协作,如何展示他们之间的逻辑关系呢?我是这么做的: 译者的sql与原文给出的sql有些许的差异,不过核心思想是一致的. 创建表: 工程师表 engineers (id, name, surname, URL) 客户表 customers (id, company
如何用一个SQL查询出一个班级各个学科第N名是谁? 首先贴出建表语句,方便大家本地测试: -- 建表语句 CREATE TABLE score ( id INT NOT NULL auto_increment, `name` VARCHAR (20) NOT NULL DEFAULT '' COMMENT '姓名', sub VARCHAR (20) NOT NULL DEFAULT '' COMMENT '学科', score INT NOT NULL DEFAULT 0 COMMENT '分
GROUP_CONCAT 使用方式GROUP_CONCAT ([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) SELECT column1, GROUP_CONCAT(IFNULL(column2,0) , ',' ,IFNULL(column3,0), ',' ,IFNULL(column4,0) ORDER BY LENGTH(column5),column4) column_name from ta
mysql方法来源于:http://www.cnblogs.com/jjcc/p/5896588.html ###在网上看到一篇,非常赞的方法### 比如说要获取班级的前3名,mysql就可以用GROUP_CONCAT + GROUP BY + substring_index实现. 考试表 DROP TABLE IF EXISTS `test`;CREATE TABLE `test` (`id` int(11) DEFAULT NULL,`name` varchar(20) DEFAULT N
SELECT pid, GROUP_CONCAT(field ORDER BY coder desc) 'msg'from product_field GROUP BY pid 分组加排序 group_concat()函数总结 group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来.要返回哪些列,由函 数参数
using Sybase.Data.AseClient;//反编译修改后的DLL public class SybaseHelper { public AseConnection con; public SybaseHelper() { this.con = new AseConnection("Data Source=10.196.58.43;Database=DBA;Port=2638;UID=dba;PWD=sql"); } public DataSet DataAdapters
这几天在做购物车的时候.购物车内的商品为一个商品占一行,结果再从数据库读出的时候,没有分组,而是循环所有的内容出来,然后进行判断.如果一样的话就把他保存到一个变量中.但是自己逻辑没搞清楚.一直出bug. 偶然间想起了 sql语句中分组查询.突然才明白 就是进行分组查询.按照店铺分组 然后里边的详细商品用 group_concat函数进行组合 select 店铺ID,group_concat(shangPinID) shangPinIDs from 购物车 group by 店铺ID 其中 sh
一.CONCAT()函数CONCAT()函数用于将多个字符串连接成一个字符串.使用数据表Info作为示例,其中SELECT id,name FROM info LIMIT 1;的返回结果为+----+--------+| id | name |+----+--------+| 1 | BioCyc |+----+--------+1.语法及使用特点:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL