2016-07-26 79 views
-1

我要產生4個表:用關係生成PostgreSQL測試數據?

  • 客戶
  • 訂閱(引用customersid和plans.id)
  • 計劃
  • 發票(每張發票引用訂閱和客戶)

我該如何編寫一個INSERT查詢,我可以插入一張發票,並通過從subs中提取所有id並選擇一個,隨機生成subscription_id,然後將我n該發票行的訂閱的相應customer_id?

+0

如果發票已引用訂閱,則不應引用客戶。這將是一個非規範化的模式,這增加了創建衝突數據的可能性。您應該'JOIN'發票訂閱以獲取相關的客戶ID。 – jpmc26

+0

好的謝謝,但我的問題是關於在INSERT查詢中從其他表中選擇數據。我的所有查詢都正常工作,我只需要用SQL生成發票測試數據,這非常棘手。 – eveo

回答

0

您可以在Internet上搜索和查找PostgreSQL的Northwind示例數據。 Northwind模型具有與您的模型相匹配的表格。在Northwind示例,你可以重命名和使用:

客戶, 員工(計劃), 訂單(訂閱), 訂單明細(發票)

發票應該只參考訂閱(而且它已經給客戶參考) 。