我有一個名爲FieldList
表看起來像這樣:如何從同一個表中連接多個列?
ElementName|Description|comp_id|FieldName
-----------------------------------------
Name | red | 1 | names
Name | blue | 7 | names
field | red | 1 | names
boxes | blue | 5 | blues
field | orange | 7 | reds
而且我想展示一個新的表只顯示了ElementNames
是相同的,則表明它們屬於哪個comp_id
到,所以它看起來像這樣:
ElementName| comp_id| comp_id
-----------------------------
Name | 1 | 7
field | 1 | 7
它沒有看起來完全一樣,但問題是我希望能夠加入並顯示ElementNames
是相同的,但有不同的comp_id
的。 這是我已經有一點點的sql代碼,但它顯然不工作。
SELECT a.comp_id, a.ElementName, b.ElementName
FROM FieldList a
INNER JOIN FieldList b ON a.ElementName = b.ElementName;
可以有多少個類似的元素名稱?如果最大數量不知道,那麼您需要動態SQL來解決這個問題。 –
爲什麼這不工作?它出什麼問題了? –
這相當於「選擇a.comp_id,來自...的a.elementName」,沒有連接。它本身就是一個等值線。如果您的值有限,或者您知道邏輯上有一個上限,則可以構造一個查詢來滿足。如果你能告訴我有多少可能的elementName值,我會很高興展示這個解決方案。 –