Raj*_*mar 2 sql sql-server-2008
下表中的列product_rate_id需要从另一个表中引用为外键。\n但是,该product_rates表必须包含 的重复值product_rate_id。(旧系统,别\xe2\x80\x99别问为什么)
CREATE TABLE product_rates\n(\n row_id INT IDENTITY(1,1) NOT NULL,\n product_rate_id INT NOT NULL,\n START_DATE DATETIME NOT NULL,\n end_date DATETIME,\n unit_rate NUMERIC(18,6)\n)\nRun Code Online (Sandbox Code Playgroud)\n\n所以问题是:您是否可以有一个被另一个表引用为外键的列包含重复值?\n有没有解决这个问题的方法?
\n您是否可以有一个被另一个表引用为外键的列包含重复值?
否 - 外键约束必须引用唯一键。
您仍然可以保留对相关表中的值的(非外键)引用product_rate_id,但是您必须在查询时决定需要哪个相关记录(我假设使用start_date和之间的有效日期end_date。