一對多sql查詢
㈠ 求一對多查詢的sql語句
select
*
from
(select
id,sum(money)
as
mm
from
a表
group
by
id)
aaa,
(select
id,sum(money)
as
nn
from
b表
group
by
id)
bbb
where
aaa.id=bbb.id
and
aaa.mm=bbb.nn;
-----------------------------
說明:
先用語句,得到aaa,bbb兩個臨時表,裡面是(id,錢的求和);
然後疊加一個查詢,從表aaa,表bbb中,用條件,篩選出需要的記錄(id相等,錢求和相等);mm,nn是我為了欄位查看方便,設置的兩個臨時欄位名。
-----------------------------
如果你是用workbench,語句正確執行要寫成一行。
㈡ sql一對多查詢
select客戶表.客戶編號,nvl(stat.c,0)
from客戶表
leftjoin(select客戶編號,sum(商品價格)cfrom交易表groupby客戶編號)statonstat.客戶編號=客戶表.客戶編號
㈢ sql 一對多的查詢
你怎麼倆table1,後一個叫table2吧
執行以下語句
selectt1.考試學號,t1.科目,t2.考試成績
from
(selecta.科目,a.科目ID,b.考試學號
from
(select科目,科目IDfromtable1)asa,
(selectdistinct考試學號fromtable2)asb)ast1leftjoin
table2ast2ont1.科目ID=t2.科目IDandt1.考試學號=t2.考試學號
結果截圖
下邊還有幾條沒顯示全,湊合看吧
㈣ sql 一對多查詢
交給我吧,典型的交叉查詢,行列轉換
select s.StudentName,
(case r.Subject when '語文' then r.Math end) as 語文,
(case r.Subject when '數學' then r.Math end) as 數學,
(case r.Subject when '英語' then r.Math end) as 英語,
(case r.Subject when '物理' then r.Math end) as 物理,
(case r.Subject when '地理' then r.Math end) as 地理
from Student s,Results r
where s.StudentId=r.StudentId
能用的話記得給分哦~
㈤ sql一對多的查詢代碼怎麼查
代碼如下:
SELECT a.trumbnail, b.url, c.url
FROM Goods a, Picture b, Picture c
WHERE a.picture=b.id AND a.picture=c.id
㈥ sql 兩表 一對多查詢問題
你的表b里應該有一個員工編號或者姓名之類的欄位吧
那就直接從表b里查詢就行
select
employeeID,
score
from
tableB
where
employeeID=12345
select
employeename,
score
from
tableB
where
employeename='aaaaa'
㈦ 一對多sql聯合查詢:
select t1.id,t1.name,min(t2.type) from t1 left join t2 on t1.id=t2.pid group by t1.id,t1.name
不知道你要取的單條是靠哪個條件選擇的,暫時取最小
㈧ sql 如何一對多的查詢
select d.*, c.成績, c.時間
from 主表 d,
(select b.*
from (select id, max(時間) max_date from 從表 group by id) a,
從表 b
where a.id = b.id
and a.max_date = b.時間) c
where c.id = d.id
㈨ sql語句一對多表的查詢方式怎麼寫
使用SELECT子句進行多表查詢
SELECT a.id,a.user, b.message FROM user AS a,message AS b WHERE a.id=b.id
㈩ SQL一對多查詢問題
select t1.學號,t1.姓名,t1.性別,t2.科目,t2.成績 from 總表 t1,分表 t2 where t1.學號=t2.學號 order by t1.學號
另你說的跨行顯示如果是值相同就合並上下兩個單元格的意思的話,是可以的,要在後台寫代碼合並單元格。
protected void GridView2_DataBound(object sender, EventArgs e)
{
int inArA;
int inArB;
int intspan;
string temp="",temp1="";
for (inArA = 0; inArA < GridView2.Rows.Count; inArA++)
{
GridViewRow _itm = GridView2.Rows[inArA];
intspan = 1;
temp = GridView2.Rows[inArA].Cells[0].Text;
#region IP不同導致出現兩條記錄時,開始合並
for (inArB = inArA + 1; inArB < GridView2.Rows.Count; inArB++)
{
temp1 = GridView2.Rows[inArB].Cells[0].Text;
if (String.Compare(temp, temp1) == 0)
{
intspan++;
//GridView2.Rows[inArA].Cells[0].RowSpan = intspan;//學號合並
//GridView2.Rows[inArA].Cells[1].RowSpan = intspan;//姓名合並
//GridView2.Rows[inArA].Cells[2].RowSpan = intspan;//性別合並
GridView2.Rows[inArA].Cells[3].RowSpan = intspan;//科目不合並
GridView2.Rows[inArA].Cells[4].RowSpan = intspan;//成績不合並
//GridView2.Rows[inArB].Cells[0].Visible = false;
//GridView2.Rows[inArB].Cells[1].Visible = false;
//GridView2.Rows[inArB].Cells[2].Visible = false;
GridView2.Rows[inArB].Cells[3].Visible = false;
GridView2.Rows[inArB].Cells[4].Visible = false;
}
else
{
break;
}
}
#endregion
inArA = inArB - 1;
}
}
希望對你有幫助