m0_74027138 2024-06-13 08:37 采纳率: 81.3%
浏览 16
已结题

sql server中创建商品销售管理数据库

img

img

img


如图给出的问题创建数据库还有问题 下面水字就是几十上百个八百数据

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-06-13 08:37
    关注

    引自免费微信小程序:皆我百晓生

    为了创建一个商品销售管理数据库,并实现图中所描述的功能,我们首先需要定义数据库结构,然后插入数据,接着设置主键和约束,最后编写查询语句。下面是详细的步骤和SQL代码。

    第一步:创建数据库和表格

    1. 创建数据库

    CREATE DATABASE SalesManagement;
    GO
    USE SalesManagement;
    

    2. 创建商品表 Product

    CREATE TABLE Product (
        ProductID CHAR(8) NOT NULL,
        ProductName VARCHAR(84) NOT NULL,
        Manufacturer CHAR(6) NOT NULL,
        Category CHAR(8) NOT NULL,
        ExpiryYear CHAR(4) NOT NULL,
        CONSTRAINT PK_Product PRIMARY KEY (ProductID),
        CONSTRAINT CHK_Product_Expiry CHECK (ExpiryYear >= '1' AND ExpiryYear <= '10')
    );
    

    3. 创建商店表 Store

    CREATE TABLE Store (
        StoreID CHAR(4) NOT NULL,
        StoreName VARCHAR(20) NOT NULL,
        Address CHAR(20) NOT NULL,
        Manager CHAR(84) NOT NULL,
        CONSTRAINT PK_Store PRIMARY KEY (StoreID)
    );
    

    4. 创建销售情况表 Sales

    CREATE TABLE Sales (
        SaleID INT IDENTITY(1,1) PRIMARY KEY,
        ProductID CHAR(8) NOT NULL,
        StoreID CHAR(4) NOT NULL,
        SaleTime DATETIME,
        Quantity CHAR(6),
        CONSTRAINT FK_Sales_Product FOREIGN KEY (ProductID) REFERENCES Product(ProductID),
        CONSTRAINT FK_Sales_Store FOREIGN KEY (StoreID) REFERENCES Store(StoreID),
        CONSTRAINT CHK_Sales_Quantity CHECK (Quantity >= '1')
    );
    

    第二步:插入数据

    插入商品数据

    INSERT INTO Product (ProductID, ProductName, Manufacturer, Category, ExpiryYear)
    VALUES ('PRD001', 'Soap', 'CleanCo', '日用品', '3'),
           ('PRD002', 'Television', 'TechInc', '电器', '5'),
           -- 更多数据...
           ('PRD005', 'Bread', 'FoodBakery', '食品', '1');
    

    插入商店数据

    INSERT INTO Store (StoreID, StoreName, Address, Manager)
    VALUES ('STR01', 'MegaMart', '123 Main St', 'John Doe'),
           ('STR02', 'QuickShop', '456 Park Ave', 'Jane Smith'),
           -- 更多数据...
           ('STR05', 'DailyFresh', '789 Market Rd', 'Michael Johnson');
    

    插入销售数据

    INSERT INTO Sales (ProductID, StoreID, SaleTime, Quantity)
    VALUES ('PRD001', 'STR01', '2023-01-01', '50'),
           ('PRD002', 'STR02', '2023-02-01', '20'),
           -- 更多数据...
           ('PRD005', 'STR05', '2023-03-01', '100');
    

    第三步:编写查询语句

    查询商品类别是日用品的商品信息

    SELECT ProductName, Category, ExpiryYear
    FROM Product
    WHERE Category = '日用品';
    

    查询保质期大于1年,且小于5年的商品信息

    SELECT *
    FROM Product
    WHERE CAST(ExpiryYear AS INT) > 1 AND CAST(ExpiryYear AS INT) < 5
    ORDER BY ProductName ASC;
    

    按照商品类别分组,查询显示每类别有多少种商品

    SELECT Category, COUNT(*) AS NumberOfProducts
    FROM Product
    GROUP BY Category;
    

    销售时间在2018年6月10日之前的,且数量大于70个的商品的名称、商店名称

    SELECT P.ProductName, S.StoreName
    FROM Sales SA
    JOIN Product P ON SA.ProductID = P.ProductID
    JOIN Store S ON SA.StoreID = S.StoreID
    WHERE SA.SaleTime < '2018-06-10' AND CAST(SA.Quantity AS INT) > 70;
    

    这些步骤和代码应该能帮助你完成图中所示的任务。如果有任何疑问或需要进一步的帮助,请随时提问。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月22日
  • 已采纳回答 6月14日
  • 创建了问题 6月13日