{
    "data": {
        "question": {
            "questionId": "1948",
            "questionFrontendId": "1795",
            "boundTopicId": null,
            "title": "Rearrange Products Table",
            "titleSlug": "rearrange-products-table",
            "content": "<p>Table: <code>Products</code></p>\n\n<pre>\n+-------------+---------+\n| Column Name | Type    |\n+-------------+---------+\n| product_id  | int     |\n| store1      | int     |\n| store2      | int     |\n| store3      | int     |\n+-------------+---------+\nproduct_id is the primary key (column with unique values) for this table.\nEach row in this table indicates the product&#39;s price in 3 different stores: store1, store2, and store3.\nIf the product is not available in a store, the price will be null in that store&#39;s column.\n</pre>\n\n<p>&nbsp;</p>\n\n<p>Write a solution to rearrange the <code>Products</code> table so that each row has <code>(product_id, store, price)</code>. If a product is not available in a store, do <strong>not</strong> include a row with that <code>product_id</code> and <code>store</code> combination in the result table.</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>&nbsp;</p>\n<p><strong class=\"example\">Example 1:</strong></p>\n\n<pre>\n<strong>Input:</strong> \nProducts table:\n+------------+--------+--------+--------+\n| product_id | store1 | store2 | store3 |\n+------------+--------+--------+--------+\n| 0          | 95     | 100    | 105    |\n| 1          | 70     | null   | 80     |\n+------------+--------+--------+--------+\n<strong>Output:</strong> \n+------------+--------+-------+\n| product_id | store  | price |\n+------------+--------+-------+\n| 0          | store1 | 95    |\n| 0          | store2 | 100   |\n| 0          | store3 | 105   |\n| 1          | store1 | 70    |\n| 1          | store3 | 80    |\n+------------+--------+-------+\n<strong>Explanation:</strong> \nProduct 0 is available in all three stores with prices 95, 100, and 105 respectively.\nProduct 1 is available in store1 with price 70 and store3 with price 80. The product is not available in store2.\n</pre>\n",
            "translatedTitle": null,
            "translatedContent": null,
            "isPaidOnly": false,
            "difficulty": "Easy",
            "likes": 798,
            "dislikes": 52,
            "isLiked": null,
            "similarQuestions": "[{\"title\": \"Product's Price for Each Store\", \"titleSlug\": \"products-price-for-each-store\", \"difficulty\": \"Easy\", \"translatedTitle\": null}, {\"title\": \"Dynamic Unpivoting of a Table\", \"titleSlug\": \"dynamic-unpivoting-of-a-table\", \"difficulty\": \"Hard\", \"translatedTitle\": null}]",
            "exampleTestcases": "{\"headers\":{\"Products\":[\"product_id\",\"store1\",\"store2\",\"store3\"]},\"rows\":{\"Products\":[[0, 95, 100, 105], [1, 70, null, 80]]}}",
            "categoryTitle": "Database",
            "contributors": [],
            "topicTags": [
                {
                    "name": "Database",
                    "slug": "database",
                    "translatedName": null,
                    "__typename": "TopicTagNode"
                }
            ],
            "companyTagStats": null,
            "codeSnippets": [
                {
                    "lang": "MySQL",
                    "langSlug": "mysql",
                    "code": "# Write your MySQL query statement below\n",
                    "__typename": "CodeSnippetNode"
                },
                {
                    "lang": "MS SQL Server",
                    "langSlug": "mssql",
                    "code": "/* Write your T-SQL query statement below */\n",
                    "__typename": "CodeSnippetNode"
                },
                {
                    "lang": "Oracle",
                    "langSlug": "oraclesql",
                    "code": "/* Write your PL/SQL query statement below */\n",
                    "__typename": "CodeSnippetNode"
                },
                {
                    "lang": "Pandas",
                    "langSlug": "pythondata",
                    "code": "import pandas as pd\n\ndef rearrange_products_table(products: pd.DataFrame) -> pd.DataFrame:\n    ",
                    "__typename": "CodeSnippetNode"
                },
                {
                    "lang": "PostgreSQL",
                    "langSlug": "postgresql",
                    "code": "-- Write your PostgreSQL query statement below\n",
                    "__typename": "CodeSnippetNode"
                }
            ],
            "stats": "{\"totalAccepted\": \"112K\", \"totalSubmission\": \"131.2K\", \"totalAcceptedRaw\": 112015, \"totalSubmissionRaw\": 131199, \"acRate\": \"85.4%\"}",
            "hints": [],
            "solution": {
                "id": "2023",
                "canSeeDetail": false,
                "paidOnly": true,
                "hasVideoSolution": false,
                "paidOnlyVideo": true,
                "__typename": "ArticleNode"
            },
            "status": null,
            "sampleTestCase": "{\"headers\":{\"Products\":[\"product_id\",\"store1\",\"store2\",\"store3\"]},\"rows\":{\"Products\":[[0, 95, 100, 105], [1, 70, null, 80]]}}",
            "metaData": "{\"mysql\": [\"Create table If Not Exists Products (product_id int, store1 int, store2 int, store3 int)\"], \"mssql\": [\"Create table Products (product_id int, store1 int, store2 int, store3 int)\"], \"oraclesql\": [\"Create table Products (product_id int, store1 int, store2 int, store3 int)\"], \"database\": true, \"name\": \"rearrange_products_table\", \"pythondata\": [\"Products = pd.DataFrame([], columns=['product_id', 'store1', 'store2', 'store3']).astype({'product_id':'Int64', 'store1':'Int64', 'store2':'Int64', 'store3':'Int64'})\"], \"manual\": false, \"postgresql\": [\"Create table If Not Exists Products (product_id int, store1 int, store2 int, store3 int)\\n\"], \"database_schema\": {\"Products\": {\"product_id\": \"INT\", \"store1\": \"INT\", \"store2\": \"INT\", \"store3\": \"INT\"}}}",
            "judgerAvailable": true,
            "judgeType": "large",
            "mysqlSchemas": [
                "Create table If Not Exists Products (product_id int, store1 int, store2 int, store3 int)",
                "Truncate table Products",
                "insert into Products (product_id, store1, store2, store3) values ('0', '95', '100', '105')",
                "insert into Products (product_id, store1, store2, store3) values ('1', '70', 'None', '80')"
            ],
            "enableRunCode": true,
            "enableTestMode": false,
            "enableDebugger": false,
            "envInfo": "{\"mysql\": [\"MySQL\", \"<p><code>MySQL 8.0</code>.</p>\"], \"mssql\": [\"MS SQL Server\", \"<p><code>mssql server 2019</code>.</p>\"], \"oraclesql\": [\"Oracle\", \"<p><code>Oracle Sql 11.2</code>.</p>\"], \"pythondata\": [\"Pandas\", \"<p>Python 3.10 with Pandas 2.0.2 and NumPy 1.25.0</p>\"], \"postgresql\": [\"PostgreSQL\", \"<p>PostgreSQL 16</p>\"]}",
            "libraryUrl": null,
            "adminUrl": null,
            "challengeQuestion": null,
            "__typename": "QuestionNode"
        }
    }
}