我試圖從兩個不同的表中引用兩個主鍵,但問題在於它們由於其字符長度而不匹配。例如,person.personid = '1234'
和department.personid = '12345'
。如何匹配兩個不同主鍵長度的表
是否有一條SQL語句可用於匹配主鍵的前4或5個字符,或者是否有其他任何可以使用的方法。
更新:我真誠的道歉。我正在處理兩個表格。 "dyndomrun.ddid"
帶有主鍵,"domainregion.domainid"
沒有任何主鍵也沒有外鍵。 「dyndomrun」表DDL設置爲"character varying"
並且具有8個字符,而「domainregion」表DDL也設置爲「字符變化」但具有10個字符。
問題:domainregion
表中有一些字段需要與dyndomrun
表中的主鍵連接在一起。我似乎不能用簡單的SQL語句來做到這一點,如下面
SELECT domainregion.domainid, dyndomrun.ddid
FROM domainregion, dyndomrun
WHERE domainregion.domainid = dyndomrun.ddid
ORDER BY domainregion.domainid, dyndomrun.ddid;
我曾嘗試連接,內部連接,LIKE,沒有人似乎工作。我正在處理的數據庫純粹是使用PostgreSQL存儲的基於SQL的數據庫。
請指教。
什麼數據庫引擎? MySQL的? SQL Server?甲骨文?其他? – ean5533 2011-12-23 15:37:54
我將創建一個映射表,其中列p_person_id和d_person_id – 2011-12-23 15:39:42
通常,您不匹配表之間的主鍵 - 一個表的**外鍵**引用另一個表的**主鍵** - 並且這兩者需要相同在他們的數據類型 – 2011-12-23 15:39:49