當用戶可以是客戶或交易者時,我正在創建應用程式(我無法為每個人創建單獨的表)。每個交易者都可以擁有許多產品,并創建只能為選定用戶顯示的特殊產品(Special_product表)。每個用戶都可以下訂單 ( Order_table) 特定產品。問題是我的資料庫模型中有兩個相似的連接表。我不知道這是否是一個好的解決方案,這就是為什么要問你 - 它應該看起來像這樣,或者也許有更好的解決方案?
圖形模型:

uj5u.com熱心網友回復:
我覺得你的模型很好。
為了獲得給定用戶的可用產品,我會做
SELECT
p.product_id,
p.product_name,
vendor.user_name vendor_name
FROM
(
SELECT product_id FROM product
UNION
SELECT product_id FROM special_product WHERE user_id = ?
) selection
INNER JOIN product p ON p.product_id = selection.pproduct_id
INNER JOIN [user] vendor ON vendor.user_id = p.user_id
user 是 SQL 中的保留字,我建議選擇不同的表名。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/369145.html
