1. 現有倆張表
表一 pl 為管道表 p1.p2 的xy座標在座標表裡 p1,p2為開始點和結束點
表二為座標表 pp
需求:根據開始點結束點座標。算出所有管道距離
給出sql
selecta.name name,sum(a.s1) length
from
( select
r1.id,
r1. name,
(r1.x - r2.x) dif_x,
(r1.y - r2.y) dif_y,
((r1.x - r2.x) *(r1.x - r2.x)) + ((r1.y - r2.y) *(r1.y - r2.y)) s,
power(
((r1.x - r2.x) *(r1.x - r2.x)) + ((r1.y - r2.y) *(r1.y - r2.y)),
1 / 2
) s1
from
(select
(@rownum := @rownum + 1) as rownum,
tab.id,
tab. name,
tab.x,
tab.y
from
(select
pl.id,
pl. name,
pp.x,
pp.y
from
plleft join pp on pl.p1 = pp.id
or pl.p2 = pp.id
) tab,
(select @rownum := 0) r
) r1
left join (
select
(@rownum := @rownum + 1) as rownum,
tab.id,
tab. name,
tab.x,
tab.y
from
(select
pl.id,
pl. name,
pp.x,
pp.y
from
plleft join pp on pl.p1 = pp.id
or pl.p2 = pp.id
) tab,
(select @rownum := 0) r
) r2 on r1.id = r2.id
and r1.rownum = r2.rownum - 1
) a group by a.`name`
mysql表的運算 mysql 多表聯合做運算
1.現有倆張表 表一 pl 為管道表 p1.p2 的xy座標在座標表裡 p1,p2為開始點和結束點 表二為座標表 pp 需求 根據開始點結束點座標。算出所有管道距離 給出sql select a.name name,sum a.s1 length from select r1.id,r1.name,...
mysql多表聯合查詢
我在工作中天天研究zen cart的程式,那個叫人痛苦,最近比較痛苦的是經常碰見mysql多表聯合查詢,多的時候有12個表聯合查詢,zen cart的程式設計師不知道是懶還是技術好,乙個語句完成啦20幾個功能模組需要的資料,我修改就痛苦的很 我只會select from table where id...
mysql多表聯合查詢
mysql多表聯合查詢操作,3個表以上操作的sql語句 from語句是表選擇語句,需要選擇多個表的時候,用逗號 來分割所選的表。還可以用join語句來定義結合條件。表的別名 選擇的表可以取別名,在下面的例子中,from所選擇的表名後用空格來分割別名 例子1 將表foo取別名 t1,將表bar 取別名...