2013-08-05 54 views
0

我有1臺長條桌和1個短表:加入表與根據列值值

長表看起來像這樣:

LongTable: 

+--------------+----------+----------+----------+ 
| Kabelnummer |  GL |more data |even more |   
+--------------+----------+----------+----------+ 
| 1   | 850 | x  | x  | 
+--------------+----------+----------+----------+ 
| 2   | 850 | x  | x  | 
+--------------+----------+----------+----------+ 
| 3   | 1300 | x  | x  | 
+--------------+----------+----------+----------+ 
| 4   | 1300 | x  | x  | 
+--------------+----------+----------+----------+ 

ShortTable: 

+--------------+----------+----------+----------+ 
| data   |  GL |more data |numericVal|   
+--------------+----------+----------+----------+ 
|  x  | 850 | x  | 0.2345 | 
+--------------+----------+----------+----------+ 
|  x  | 1300 | x  | 0.2849 | 
+--------------+----------+----------+----------+ 

我想將「numericVal」列複製到表格「LongTable」中的查詢,其中GL.Longtable與GL.shorttable相同:

LongTable: 

+--------------+----------+----------+----------+----------+ 
| Kabelnummer |  GL |more data |even more |numericVal|   
+--------------+----------+----------+----------+----------+ 
| 1   | 850 | x  | x  | 0.2345 | 
+--------------+----------+----------+----------+----------+ 
| 2   | 850 | x  | x  | 0.2345 | 
+--------------+----------+----------+----------+----------+ 
| 3   | 1300 | x  | x  | 0.2849 | 
+--------------+----------+----------+----------+----------+ 
| 4   | 1300 | x  | x  | 0.2849 | 
+--------------+----------+----------+----------+----------+ 

我該怎麼做?

回答

1

嘗試加入兩個表與INNER JOIN

SELECT L.*, s.numericVal 
    FROM LongTable l 
    JOIN sortTable s 
    ON l.GL = s.GL 
+0

訪問告訴我,那裏有一個語法錯誤和highlites'join' – Gutanoth

+0

@Gutanoth之前'JOIN'加上'INNER' – hims056

+1

由於它的工作!我的問題是,其中一個表具有「GL」作爲備忘錄文件類型 – Gutanoth

1
SELECT lt.Kabelnummer, lt.GL, lt.X, lt.Y, st.numericVal 
FROM LongTable lt 
INNER JOIN ShortTable st ON lt.GL = st.GL 

您使用JOIN做到這一點。

你可以閱讀有關加入這裏:

Join Fundamentals