ÇóÒ»ÌõMySqlÓï¾ä
ÓÐÕâÑù3Õűí
ÈÎÎñ±í
ID Name
1 nm1
2 nm2
ÒÑÍê³ÉÈÎÎñ±í
ID SwdID
1 1
2 1
δÍê³ÉÈÎÎñ
ID SwdID
1 1
2 1
ÒÑÍê³ÉÈÎÎñ±íºÍδÍê³ÉÈÎÎñ±íµÄSwdID×ֶζÔÓ¦µÄÖµÊÇÈÎÎñ±íÖеÄID
ÈçºÎÓÃÒ»ÌõMYSQLÓï¾ä½«IDΪ1µÄÈÎÎñÃû³Æ¡¢ÈÎÎñ×ÜÊýºÍÒÑÍê³ÉÈÎÎñÊý»ñÈ¡³öÀ´?
ÈÎÎñ×ÜÊý=ÒÑÍê³ÉÈÎÎñÊý+δÍê³ÉÈÎÎñ?
select a.ID,a.Name,sum(b.id+c.id),sum(b.id)
from ÈÎÎñ±í a
left join ÒÑÍê³ÉÈÎÎñ±í b on a.id=b.SwdID
left join δÍê³ÉÈÎÎñ c on a.id=c.SwdID
group by
a.ID,a.Name
select a.ID,a.Name,sum(COALESCE(b.id,0)+COALESCE(c.id,0)),sum(COALESCE(b.id,0))
from ÈÎÎñ±í a
left join ÒÑÍê³ÉÈÎÎñ±í b on a.id=b.SwdID
left join δÍê³ÉÈÎÎñ c on a.id=c.SwdID
where a.id=1
group by
a.ID,a.Name
SQL code:
ÈÎÎñ±í£º
mysql> select * from task;
+------+------+
| id | name |
+------+------+
| 1 | nm1 |
| 2 | nm2 |
+------+------+
2 rows in set (0.00 sec)
δÍê³ÉÈÎÎñ±í£º
mysql> select * from wtask;
+------+------+
| id | tid |
+------+------+
| 1 | 1 |
| 2 | 1 |
+------+--
Ïà¹ØÎÊ´ð£º
×ö¸öÕ¾ÄÚËÑË÷£¬ÏÖÔÚÓÃlike ÕâÑùµÄЧÂÊʵÔÚÌ«µÍÁË£¬Ïë¸Ä³ÉÈ«ÎÄËÑË÷·½Ê½¡£
µ«¿´ÁËÍøÉÏ˵µÄÖÐÎÄÖ§³Ö²»ºÃ£¬ÏëÎÊһϸ÷λÐÖµÜÊÇÈçºÎ½â¾öÕâ¸öÎÊÌâµÄ£¿
µ¥¶À½¨Á¢Ö÷Ìâ±íºÍÄÚÈÝ±í ¼ìË÷Ö÷Ìâ
È»ºó¸ù¾ÝÖ÷Ìâ¼ìË÷Ä ......
ÎÒ֮ǰµ¼ÈëµÄÊý¾Ý¿â£¬ÏÖÔÚɾ³ý²»ÁË£¬ÓÃÁËÃüÁîÐк͹¤¾ß¶¼²»ÐУ¬ÖØÆôÒ²²»ÐУ¬ÕâÊÇÎªÊ²Ã´ÄØ£¿
ÄãÊÇÈçºÎɾ³ýµÄ£¿
ÓÐʲôÌáʾ£¿
ÎÊÌâ˵Ã÷Ô½Ïêϸ£¬»Ø´ðÒ²»áԽ׼ȷ£¡²Î¼ûÈçºÎÌáÎÊ¡££¨ÌáÎʵÄÖǻۣ©
......
ÎÒÔÚ×¢²áÒ³ÃæÐ´ÈëÁËÈçÏ´úÂ룺
<?php
$conn=mysql_connect("localhost","root","614510")or die("Êý¾Ý¿â·þÎñÆ÷Á¬½Ó´íÎó".mysql_error());
& ......
SELECT a.tguildname ,SUM(a.ct) + if (SUM(b.ct) IS NULL ,0,SUM(b.ct)) from (
SELECT tg.tguildname,c.cid, (
cf.fbb + cf.fgjbb + cf.fjybb + cf.fqb + cf.fgjqb + cf.fjyqb + cf.fqib + cf. ......
ÐèÒªÔÚMySQLÀïÃæÐ´¸ö´¢´æ¹ý³Ì,
·ÃÎÊoracleµÄÊý¾Ý.
Ŀǰ²»ÄÜ
oracle¿ÉÒԾͿÉÒÔÁ¬½Ómysql£¬Í¨¹ýodbc+dblinkÀ´Á¬½Ó
ûÓа취¡£Ä¿Ç°µÄMYSQLµÄ°æ±¾ÖÐÉв»Ö§³ÖÁ¬½Óµ½ÆäËüÊý¾Ý¿â£¬
ÕæÍ¦ÓÐÏë·¨µÄ ĿǰÎÒû×ö¹ý
......