首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL -将员工链接到发票#

MySQL -将员工链接到发票#
EN

Stack Overflow用户
提问于 2017-12-12 20:37:38
回答 1查看 44关注 0票数 0

一家服务公司想要一个究竟是谁做了什么工作的注册中心,在这种情况下,我们有9名员工,其中一名或多名员工一次可以开一张发票。

问题是:对于管理层获取每个员工所做的工作(工资)的查询,数据库应该如何存储员工所做的发票?

到目前为止,主管会对每张发票中的员工进行标记,而db有全部9名员工,我很难将矩阵存储到列中--或者更确切地说,是列中的员工列表。

在搜索employee# 2时,员工可以在没有找到员工22的情况下对此进行查询吗?

代码语言:javascript
复制
Invoice #                   List of Employees
 1                        3, 5
 2                        8, 1, 4
 3                        6
 4                        7, 2, 9, 3...

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-12 20:44:18

代码语言:javascript
复制
CREATE TABLE Employee
(
    [Id] INT NOT NULL PRIMARY KEY
    ...
)

CREATE TABLE Invoice
(
    [Id] INT NOT NULL PRIMARY KEY
    ...
)

CREATE TABLE EmployeeInvoice
(
    [EmployeeId] INT NOT NULL, 
    [InvoiceId] INT NOT NULL, 
    PRIMARY KEY ([EmployeeId], [InvoiceId]), 
    CONSTRAINT [FK_EmployeeInvoice_ToTableEmployee] 
    FOREIGN KEY ([EmployeeId]) REFERENCES [Employee]([Id]), 
    CONSTRAINT [FK_EmployeeInvoice_ToTableInvoice] 
    FOREIGN KEY ([InvoiceId]) REFERENCES [Invoice]([Id])
)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47781140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档