Home  >  Article  >  Backend Development  >  PHP分组查询生成XML,该如何解决

PHP分组查询生成XML,该如何解决

WBOY
WBOYOriginal
2016-06-13 12:59:53937browse

PHP分组查询生成XML
有这样两张表,arp_individual是病人信息表,arp_area是住院房间表,现在要实现按房间统计病人数情况生成一个XML文档以便被flash动画调用,病人信息中的room字段与住院房间表中的id关联,怎么实现这样的PHP代码:

------------------------

以下是病人信息表

CREATE TABLE `arp_individual` (<br />
  `id` int(11) NOT NULL default '0',<br />
  `individualid` varchar(60) character set latin1 default NULL,<br />
  `sex` int(11) default NULL,<br />
  `room` int(11) default NULL,<br />
  PRIMARY KEY  (`id`)<br />
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


------------------------

以下是住院房间表

CREATE TABLE `arp_area` (<br />
  `id` mediumint(8) NOT NULL auto_increment,<br />
  `areaname` longtext,<br />
  `nurse` int(11) default NULL,<br />
  PRIMARY KEY  (`id`)<br />
) ENGINE=MyISAM AUTO_INCREMENT=2059 DEFAULT CHARSET=utf8;


------------------------

以下是生成的XML数据格式

<?xml version="1.0" encoding="utf-8"?><br />
<data><br />
	<area id="A01" title="常规治疗1区" value="常规治疗1区,人数:6人,护士:林晓岚" /><br />
	<area id="A02" title="常规治疗2区" value="常规治疗1区,人数:5人,护士:林晓岚" /><br />
	......<br />
	<area id="F09" title="急诊9区" value="急诊9区,人数:8人,护士:张梅颖" /><br />
</data>

------解决方案--------------------
DOMDocument生成
另没有看出来这两张表是怎么关联的,推测可能有第三张表吧。
------解决方案--------------------
还在搞医院的东西,我以前做过医院的单。
有几个经验:
1 私人医院全tmd 的奸商,要有一定的尺度,不要被人忽悠得到处转。
2 公立医院,资金要等好久,审批程序极期麻烦。
所以劝一句,没有很NB的关系,医院这趟水,没要涉太深~
------解决方案--------------------
为啥要like呢?
SELECT COUNT(*), areaname  FROM arp_individual i<br />
  LEFT JOIN arp_area  a ON  i.room = a.id  <br />
  GROUP BY i.room
 
------解决方案--------------------
如果希望别人帮你写代码,你至少需要:
1、给出表间关系
2、输出结果中的内容与字段的对应关系
------解决方案--------------------

引用:
上边忘记补充一点,其实房间编号信息里隐藏着房间的分类信息,像A01-01横杠后边的是房间编号,前边的A01是区域编号,这不是我这样设计的,医院本身就这样编号,没办法!

先统计单个的,然后再循环处理A01-01这种情况。字符串操作总比mysql要来的容易些。~
------解决方案--------------------
既然你连数据对应关系都不愿提供,那只有泛泛的说了
按病区计数、求和,将结果循环输出
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article: php好手 Next article: mysql 截取字符串,该怎么处理