(1).使用 CONCAT_WS( )

1、功能:指定分隔符并将多个字符串连接成一个字符串
2、语法: concat_ws(separator, str1, str2, ...)
3、说明:第一个参数指定分隔符。需要注意的是分隔符不能为null,如果为null,则返回结果为null。

首先处理评价表,使用 CONCAT_WS( ) 函数将两个字段相连

select pei_app,CONCAT_WS(':',pei_xmname,pei_fenshu) as 配送分 from peisongfen;
(2). 使用 GROUP_CONCAT()

1、功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。
2、语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )
3、说明:通过使用 distinct 可以排除重复值;如果希望对结果中的值进行排序,可以使用 order by 子句;separator 是一个字符串值,缺省为一个逗号。

使用 GROUP_CONCAT() 函数配合 GROUP BY() 函数将相同编码的数据进行联接

select pei_app,GROUP_CONCAT(CONCAT_WS(':',pei_xmname,pei_fenshu) ORDER BY pei_xmname DESC SEPARATOR ' , ') as 配送分 from peisongfen GROUP BY pei_app; 
#看着不舒服?美化一下
SELECT
	pei_app,
	GROUP_CONCAT(
		CONCAT_WS(':', pei_xmname, pei_fenshu)
		ORDER BY
			pei_xmname DESC SEPARATOR ' , '
	) AS 配送分
	peisongfen
GROUP BY
	pei_app;
(3).最后 inner join 一下,搞定
# peisongfen 就是上面的图片中的表,delivery 里面有姓名、时间、编号等信息
SELECT
	d.del_application,
	d.del_time,
	d.del_main_name,
	p.`配送分`
	delivery AS d
INNER JOIN (
	SELECT
		pei_app,
		GROUP_CONCAT(
			CONCAT_WS(':', pei_xmname, pei_fenshu) SEPARATOR ' , '
		) AS 配送分
		peisongfen
	GROUP BY
		pei_app
) AS p ON d.del_application = p.pei_app
                                    今天想用ruby on rails做一个小项目,需要用到mysql数据库,项目中的数据已经有了,只不过是保存在Sql Server中,用rails倒是可以操作Sql Server,但是总感觉不怎么搭配,想转换后使用,网上翻了下,转换的办法有很多,通过ODBC的,通过PHP程序的,写SQL代码的,觉得转换还是用工具吧,先是用ODBC试着玩了下,发现Sql Server的导出功能对mysql ODBC的支持并不是太好
ODBC分32,64位,一开始下了个32位,在Win7 64位上面显示不出来,又从mysql官网下载了64位版本才可以选择添加
32位版本:
//www.jb51.net/datab
                                    MYSQL 单表一对多查询,将多条记录并成一条记录
一、描述:
在MySQL 5.6环境下,应工作需求:将一个表中多条某个相同字段的其他字段并(不太会表达,有点绕,直接上图)
想要达到的效果:
实现SQL语句:
1 SELECT
2   a.books,
3   GROUP_CONCAT(a.name SEPARATOR ‘||’) AS NAMES,
4   GROUP_CONCAT(a.code SEPARATOR ‘||’) AS codes
5 FROM
6   temp_info
                                    心得总结:会的东西也要学会问,追求更好的解决方案,得到好的解决方案要学会举一反三,例如:数据库中一对多关系,将多条记录整理成一条记录显示到列表中。如下:序号  姓名  角色 1  张三  管理员、公司经理、集团成员 这种方式可以在程序中做处理,但处理逻辑较复杂。且耗费工时,性能也不太好。但是在DBA眼中这样的显示方式只需一条SQL,使用GROUP_CONCAT()函数即可。到网上收索下GROUP...
select * from timeand as a where not exists(select 1 from timeand where a.time = time and a.total
                                    1)实体向关系模式的转换
将E-R图中的实体逐一转换成为一个关系模式, 实体名对应关系模式的名称,实体的属性转换关系模式的属性,实体标识符就是关系的(键)。
2)联系向关系模式的转换
E-R图中的联系有3种:一对一联系(1: 1)、一对多联系(1 :n)和多对多联系(m:n)
针对这3种不同的联系,转换方法如下。
(1) 一对一联系的转换一对一联系有两种方式向关系模式进行转换。一种方式是将联系转换成一个独立的关系模式,关系模式的名称取联系的名称,关系模式的属性包括该联系所关联的两个实体的码及联系的属性,
CREATE TABLE `kx_product` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `title` varchar(200) NOT NULL DEFAULT '标题',
 `preview` varchar(200) NOT...
                                    数据库环境:mysql5.6需求描述(图1): 
最终期望的结果(图2): 
如上图所示,现有两张表cj_lottery_winning_record和cj_lottery_winning_user_info 
两者的关系一对多。 
现在进行连接查询时, 
SELECT  
  a.id winning_id, 
  a.awards_setting_id, 
  a.award_name,
这种情况下的领导关系若要归并到多端实体中,就归并到(普通)职工这一实体(多端嘛)
此外,由于高级职工(领导)也是职工,所以领导字段(属性)的取值类型也是工号
在应用的时候,可以通过该归并职工表查询到某个员工的本人的职工号,而且还可以查到其对应的领导的职工号(
                                    目录多表关联关系的分类mybatis中的多表查询:数据库准备 项目目录 一对一查询(多对一)方式一:(xml文件映射)查询结果: 方式二:(注解映射) 一对多查询(一对多)方式一:(xml文件映射) 方式二:(注解映射)既然数据库是存储项目中的数据的,项目中的数据主要是类型创建的对象,项目中类型和类型之间是有关系的,数据库中怎么体现出来?
不论是生活中,还是抽象出来的软件中,描述生活中的多个类型之间的关系,总结如下:举例:学生和成绩就是一对多 成绩和学生就是一对一 一个学生可以有多个成绩 多个成绩属于同一个