{ "data": { "question": { "questionId": "1174", "questionFrontendId": "1084", "categoryTitle": "Database", "boundTopicId": 11003, "title": "Sales Analysis III", "titleSlug": "sales-analysis-iii", "content": "<p>Table: <code>Product</code></p>\n\n<pre>\n+--------------+---------+\n| Column Name | Type |\n+--------------+---------+\n| product_id | int |\n| product_name | varchar |\n| unit_price | int |\n+--------------+---------+\nproduct_id is the primary key (column with unique values) of this table.\nEach row of this table indicates the name and the price of each product.\n</pre>\n\n<p>Table: <code>Sales</code></p>\n\n<pre>\n+-------------+---------+\n| Column Name | Type |\n+-------------+---------+\n| seller_id | int |\n| product_id | int |\n| buyer_id | int |\n| sale_date | date |\n| quantity | int |\n| price | int |\n+-------------+---------+\nThis table can have duplicate rows.\nproduct_id is a foreign key (reference column) to the Product table.\nEach row of this table contains some information about one sale.\n</pre>\n\n<p> </p>\n\n<p>Write a solution to report the <strong>products</strong> that were <strong>only</strong> sold in the first quarter of <code>2019</code>. That is, between <code>2019-01-01</code> and <code>2019-03-31</code> inclusive.</p>\n\n<p>Return the result table in <strong>any order</strong>.</p>\n\n<p>The result format is in the following example.</p>\n\n<p> </p>\n<p><strong class=\"example\">Example 1:</strong></p>\n\n<pre>\n<strong>Input:</strong> \nProduct table:\n+------------+--------------+------------+\n| product_id | product_name | unit_price |\n+------------+--------------+------------+\n| 1 | S8 | 1000 |\n| 2 | G4 | 800 |\n| 3 | iPhone | 1400 |\n+------------+--------------+------------+\nSales table:\n+-----------+------------+----------+------------+----------+-------+\n| seller_id | product_id | buyer_id | sale_date | quantity | price |\n+-----------+------------+----------+------------+----------+-------+\n| 1 | 1 | 1 | 2019-01-21 | 2 | 2000 |\n| 1 | 2 | 2 | 2019-02-17 | 1 | 800 |\n| 2 | 2 | 3 | 2019-06-02 | 1 | 800 |\n| 3 | 3 | 4 | 2019-05-13 | 2 | 2800 |\n+-----------+------------+----------+------------+----------+-------+\n<strong>Output:</strong> \n+-------------+--------------+\n| product_id | product_name |\n+-------------+--------------+\n| 1 | S8 |\n+-------------+--------------+\n<strong>Explanation:</strong> \nThe product with id 1 was only sold in the spring of 2019.\nThe product with id 2 was sold in the spring of 2019 but was also sold after the spring of 2019.\nThe product with id 3 was sold after spring 2019.\nWe return only product 1 as it is the product that was only sold in the spring of 2019.\n</pre>\n", "translatedTitle": "销售分析III", "translatedContent": "<p>表: <code>Product</code></p>\n\n<pre>\n+--------------+---------+\n| Column Name | Type |\n+--------------+---------+\n| product_id | int |\n| product_name | varchar |\n| unit_price | int |\n+--------------+---------+\nproduct_id 是该表的主键(具有唯一值的列)。\n该表的每一行显示每个产品的名称和价格。\n</pre>\n\n<p>表:<code>Sales</code></p>\n\n<pre>\n+-------------+---------+\n| Column Name | Type |\n+-------------+---------+\n| seller_id | int |\n| product_id | int |\n| buyer_id | int |\n| sale_date | date |\n| quantity | int |\n| price | int |\n+------ ------+---------+\n这个表可能有重复的行。\nproduct_id 是 Product 表的外键(reference 列)。\n该表的每一行包含关于一个销售的一些信息。\n</pre>\n\n<p> </p>\n\n<p>编写解决方案,报告<code>2019年春季</code>才售出的产品。即<strong>仅</strong>在<code><strong>2019-01-01</strong></code>至<code><strong>2019-03-31</strong></code>(含)之间出售的商品。</p>\n\n<p>以 <strong>任意顺序</strong> 返回结果表。</p>\n\n<p>结果格式如下所示。</p>\n\n<p> </p>\n\n<p><strong>示例 1:</strong></p>\n\n<pre>\n<strong>输入:</strong>\nProduct table:\n+------------+--------------+------------+\n| product_id | product_name | unit_price |\n+------------+--------------+------------+\n| 1 | S8 | 1000 |\n| 2 | G4 | 800 |\n| 3 | iPhone | 1400 |\n+------------+--------------+------------+\n<code>Sales </code>table:\n+-----------+------------+----------+------------+----------+-------+\n| seller_id | product_id | buyer_id | sale_date | quantity | price |\n+-----------+------------+----------+------------+----------+-------+\n| 1 | 1 | 1 | 2019-01-21 | 2 | 2000 |\n| 1 | 2 | 2 | 2019-02-17 | 1 | 800 |\n| 2 | 2 | 3 | 2019-06-02 | 1 | 800 |\n| 3 | 3 | 4 | 2019-05-13 | 2 | 2800 |\n+-----------+------------+----------+------------+----------+-------+\n<strong>输出:</strong>\n+-------------+--------------+\n| product_id | product_name |\n+-------------+--------------+\n| 1 | S8 |\n+-------------+--------------+\n<strong>解释:</strong>\nid 为 1 的产品仅在 2019 年春季销售。\nid 为 2 的产品在 2019 年春季销售,但也在 2019 年春季之后销售。\nid 为 3 的产品在 2019 年春季之后销售。\n我们只返回 id 为 1 的产品,因为它是 2019 年春季才销售的产品。</pre>\n", "isPaidOnly": false, "difficulty": "Easy", "likes": 168, "dislikes": 0, "isLiked": null, "similarQuestions": "[]", "contributors": [], "langToValidPlayground": "{\"cpp\": false, \"java\": false, \"python\": false, \"python3\": false, \"mysql\": false, \"mssql\": false, \"oraclesql\": false, \"c\": false, \"csharp\": false, \"javascript\": false, \"typescript\": false, \"bash\": false, \"php\": false, \"swift\": false, \"kotlin\": false, \"dart\": false, \"golang\": false, \"ruby\": false, \"scala\": false, \"html\": false, \"pythonml\": false, \"rust\": false, \"racket\": false, \"erlang\": false, \"elixir\": false, \"pythondata\": false, \"react\": false, \"vanillajs\": false, \"postgresql\": false}", "topicTags": [ { "name": "Database", "slug": "database", "translatedName": "数据库", "__typename": "TopicTagNode" } ], "companyTagStats": null, "codeSnippets": [ { "lang": "MySQL", "langSlug": "mysql", "code": "# Write your MySQL query statement below", "__typename": "CodeSnippetNode" }, { "lang": "MS SQL Server", "langSlug": "mssql", "code": "/* Write your T-SQL query statement below */", "__typename": "CodeSnippetNode" }, { "lang": "Oracle", "langSlug": "oraclesql", "code": "/* Write your PL/SQL query statement below */", "__typename": "CodeSnippetNode" }, { "lang": "Pandas", "langSlug": "pythondata", "code": "import pandas as pd\n\ndef sales_analysis(product: pd.DataFrame, sales: pd.DataFrame) -> pd.DataFrame:\n ", "__typename": "CodeSnippetNode" }, { "lang": "PostgreSQL", "langSlug": "postgresql", "code": "-- Write your PostgreSQL query statement below", "__typename": "CodeSnippetNode" } ], "stats": "{\"totalAccepted\": \"63.1K\", \"totalSubmission\": \"122.4K\", \"totalAcceptedRaw\": 63108, \"totalSubmissionRaw\": 122386, \"acRate\": \"51.6%\"}", "hints": [], "solution": null, "status": null, "sampleTestCase": "{\"headers\":{\"Product\":[\"product_id\",\"product_name\",\"unit_price\"],\"Sales\":[\"seller_id\",\"product_id\",\"buyer_id\",\"sale_date\",\"quantity\",\"price\"]},\"rows\":{\"Product\":[[1,\"S8\",1000],[2,\"G4\",800],[3,\"iPhone\",1400]],\"Sales\":[[1,1,1,\"2019-01-21\",2,2000],[1,2,2,\"2019-02-17\",1,800],[2,2,3,\"2019-06-02\",1,800],[3,3,4,\"2019-05-13\",2,2800]]}}", "metaData": "{\"mysql\":[\"Create table If Not Exists Product (product_id int, product_name varchar(10), unit_price int)\",\"Create table If Not Exists Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)\"],\"mssql\":[\"Create table Product (product_id int, product_name varchar(10), unit_price int)\",\"Create table Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)\"],\"oraclesql\":[\"Create table Product (product_id int, product_name varchar(10), unit_price int)\",\"Create table Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)\",\"ALTER SESSION SET nls_date_format='YYYY-MM-DD'\"],\"database\":true,\"name\":\"sales_analysis\",\"pythondata\":[\"Product = pd.DataFrame([], columns=['product_id', 'product_name', 'unit_price']).astype({'product_id':'Int64', 'product_name':'object', 'unit_price':'Int64'})\",\"Sales = pd.DataFrame([], columns=['seller_id', 'product_id', 'buyer_id', 'sale_date', 'quantity', 'price']).astype({'seller_id':'Int64', 'product_id':'Int64', 'buyer_id':'Int64', 'sale_date':'datetime64[ns]', 'quantity':'Int64', 'price':'Int64'})\"],\"postgresql\":[\"Create table If Not Exists Product (product_id int, product_name varchar(10), unit_price int)\\n\",\"Create table If Not Exists Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)\"],\"database_schema\":{\"Product\":{\"product_id\":\"INT\",\"product_name\":\"VARCHAR(10)\",\"unit_price\":\"INT\"},\"Sales\":{\"seller_id\":\"INT\",\"product_id\":\"INT\",\"buyer_id\":\"INT\",\"sale_date\":\"DATE\",\"quantity\":\"INT\",\"price\":\"INT\"}}}", "judgerAvailable": true, "judgeType": "large", "mysqlSchemas": [ "Create table If Not Exists Product (product_id int, product_name varchar(10), unit_price int)", "Create table If Not Exists Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)", "Truncate table Product", "insert into Product (product_id, product_name, unit_price) values ('1', 'S8', '1000')", "insert into Product (product_id, product_name, unit_price) values ('2', 'G4', '800')", "insert into Product (product_id, product_name, unit_price) values ('3', 'iPhone', '1400')", "Truncate table Sales", "insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('1', '1', '1', '2019-01-21', '2', '2000')", "insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('1', '2', '2', '2019-02-17', '1', '800')", "insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('2', '2', '3', '2019-06-02', '1', '800')", "insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('3', '3', '4', '2019-05-13', '2', '2800')" ], "enableRunCode": true, "envInfo": "{\"mysql\":[\"MySQL\",\"<p>\\u7248\\u672c\\uff1a<code>MySQL 8.0<\\/code><\\/p>\"],\"mssql\":[\"MS SQL Server\",\"<p>mssql server 2019.<\\/p>\"],\"oraclesql\":[\"Oracle\",\"<p>Oracle Sql 11.2.<\\/p>\"],\"pythondata\":[\"Pandas\",\"<p>Python 3.10 with Pandas 2.0.2 and NumPy 1.25.0<\\/p>\"],\"postgresql\":[\"PostgreSQL\",\"<p>PostgreSQL 16<\\/p>\"]}", "book": null, "isSubscribed": false, "isDailyQuestion": false, "dailyRecordStatus": null, "editorType": "CKEDITOR", "ugcQuestionId": null, "style": "LEETCODE", "exampleTestcases": "{\"headers\":{\"Product\":[\"product_id\",\"product_name\",\"unit_price\"],\"Sales\":[\"seller_id\",\"product_id\",\"buyer_id\",\"sale_date\",\"quantity\",\"price\"]},\"rows\":{\"Product\":[[1,\"S8\",1000],[2,\"G4\",800],[3,\"iPhone\",1400]],\"Sales\":[[1,1,1,\"2019-01-21\",2,2000],[1,2,2,\"2019-02-17\",1,800],[2,2,3,\"2019-06-02\",1,800],[3,3,4,\"2019-05-13\",2,2800]]}}", "__typename": "QuestionNode" } } }