[SQL ] 請問關於資料表合併?
環境 VS2005 SQLSERVER2005 EXPRESS
表A
DAY | MATH-1 | MATH-2
---------------------
02 | 70 | 10
02 | 30 | 60
02 | 80 | 40
表B
DAY | ENG-1 | ENG-2
-------------------
02 | 90 | NULL
02 | 80 | NULL
02 | 70 | NULL
02 | 50 | NULL
02 | NULL | 80
SELECT cast (round((Min(((表A.MATH-1 )+(表A.MATH-2))/6)) ,0) as int) as MATH, " & _
"(sum (isnull(表B.ENG-1,0))) as ENG " & _
"FROM 表A INNER JOIN 表B ON 表A.DAY = 表B.DAY " & _
"WHERE (表A.DAY = '" + DropDownList1.SelectedValue + "') "
執行合併後
MATH | ENG
----------------
13 | 870
正確應為
MATH | ENG
----------------
13 | 290
為何ENG的值會多乘表A的資料行數目3
難道INNER不能同時執行不同資料數的SUM及MIN等的函式?
還請各位先進解答
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.148.117
Database 近期熱門文章
PTT數位生活區 即時熱門文章