28

クエリできる SqlFiddle の既定のテーブルはありますか?

単純なテーブルで基本的な分析クエリを試したいのですが、スキーマやシード データなどを設定したくありません。

通常、私は次のようなことをしますselect * from all_objects

( http://sqlfiddle.com/ )

4

6 に答える 6

4

次のコンテンツは、スタック オーバーフロー ドキュメント (ここにアーカイブされています)の「オート ショップ データベース」からのものです。FlyingPiMonsterPrateekforsvarirTot ZamFlorin GhitaAbhilash R VankayalaWesleyJohnsonMattMureeinikMagischBostjanMzzzzzzFranck Dernoncourtenrico.bacisJavaHopperrdansbignose、およびCLによる著作権 2017 。; CC BY-SA 3.0 の下でライセンスされています。スタック オーバーフロー ドキュメントの完全なコンテンツのアーカイブは、archive.org にあります。この例では、トピック ID: 280 (例: 1014) でインデックスが付けられています。

オートショップデータベース

次の例 - オート ショップ ビジネスのデータベースには、部門、従業員、顧客、および顧客の車のリストがあります。外部キーを使用して、さまざまなテーブル間の関係を作成しています。

実際の例: SQL フィドル


テーブル間の関係

  • 各部門には0人以上の従業員がいる場合があります
  • 各従業員には 0 人または 1 人のマネージャーがいる場合があります
  • 各顧客は 0 台以上の車を所有している場合があります

部署

| Id | Name  |
|:---|:------|
| 1  | HR    |
| 2  | Sales |
| 3  | Tech  |

テーブルを作成する SQL ステートメント:

CREATE TABLE Departments (
    Id INT NOT NULL AUTO_INCREMENT,
    Name VARCHAR(25) NOT NULL,
    PRIMARY KEY(Id)
);

INSERT INTO Departments
    ([Id], [Name])
VALUES
    (1, 'HR'),
    (2, 'Sales'),
    (3, 'Tech')
;

従業員

| Id | FName     | LName    | PhoneNumber | ManagerId | DepartmentId | Salary | HireDate   |
|:---|:----------|:---------|:------------|:----------|:-------------|:-------|:-----------|
| 1  | James     | Smith    | 1234567890  | NULL      | 1            | 1000   | 01-01-2002 |
| 2  | John      | Johnson  | 2468101214  | 1         | 1            | 400    | 23-03-2005 |
| 3  | Michael   | Williams | 1357911131  | 1         | 2            | 600    | 12-05-2009 |
| 4  | Johnathon | Smith    | 1212121212  | 2         | 1            | 500    | 24-07-2016 |

テーブルを作成する SQL ステートメント:

CREATE TABLE Employees (
    Id INT NOT NULL AUTO_INCREMENT,
    FName VARCHAR(35) NOT NULL,
    LName VARCHAR(35) NOT NULL,
    PhoneNumber VARCHAR(11),
    ManagerId INT,
    DepartmentId INT NOT NULL,
    Salary INT NOT NULL,
    HireDate DATETIME NOT NULL,
    PRIMARY KEY(Id),
    FOREIGN KEY (ManagerId) REFERENCES Employees(Id),
    FOREIGN KEY (DepartmentId) REFERENCES Departments(Id)
);

INSERT INTO Employees
    ([Id], [FName], [LName], [PhoneNumber], [ManagerId], [DepartmentId], [Salary], [HireDate])
VALUES
    (1, 'James', 'Smith', 1234567890, NULL, 1, 1000, '01-01-2002'),
    (2, 'John', 'Johnson', 2468101214, '1', 1, 400, '23-03-2005'),
    (3, 'Michael', 'Williams', 1357911131, '1', 2, 600, '12-05-2009'),
    (4, 'Johnathon', 'Smith', 1212121212, '2', 1, 500, '24-07-2016')
;

お客様

| Id | FName   | LName  | Email                     | PhoneNumber | PreferredContact |
|:---|:--------|:-------|:--------------------------|:------------|:-----------------|
| 1  | William | Jones  | william.jones@example.com | 3347927472  | PHONE            |
| 2  | David   | Miller | dmiller@example.net       | 2137921892  | EMAIL            |
| 3  | Richard | Davis  | richard0123@example.com   | NULL        | EMAIL            |

テーブルを作成する SQL ステートメント:

CREATE TABLE Customers (
    Id INT NOT NULL AUTO_INCREMENT,
    FName VARCHAR(35) NOT NULL,
    LName VARCHAR(35) NOT NULL,
    Email varchar(100) NOT NULL,
    PhoneNumber VARCHAR(11),
    PreferredContact VARCHAR(5) NOT NULL,
    PRIMARY KEY(Id)
);

INSERT INTO Customers
    ([Id], [FName], [LName], [Email], [PhoneNumber], [PreferredContact])
VALUES
    (1, 'William', 'Jones', 'william.jones@example.com', '3347927472', 'PHONE'),
    (2, 'David', 'Miller', 'dmiller@example.net', '2137921892', 'EMAIL'),
    (3, 'Richard', 'Davis', 'richard0123@example.com', NULL, 'EMAIL')
;

| Id | CustomerId | EmployeeId | Model        | Status  | Total Cost |
|:---|:-----------|:-----------|:-------------|:--------|:-----------|
| 1  | 1          | 2          | Ford F-150   | READY   | 230        |
| 2  | 1          | 2          | Ford F-150   | READY   | 200        |
| 3  | 2          | 1          | Ford Mustang | WAITING | 100        |
| 4  | 3          | 3          | Toyota Prius | WORKING | 1254       |

テーブルを作成する SQL ステートメント:

CREATE TABLE Cars (
    Id INT NOT NULL AUTO_INCREMENT,
    CustomerId INT NOT NULL,
    EmployeeId INT NOT NULL,
    Model varchar(50) NOT NULL,
    Status varchar(25) NOT NULL,
    TotalCost INT NOT NULL,
    PRIMARY KEY(Id),
    FOREIGN KEY (CustomerId) REFERENCES Customers(Id),
    FOREIGN KEY (EmployeeId) REFERENCES Employees(Id)
);

INSERT INTO Cars
    ([Id], [CustomerId], [EmployeeId], [Model], [Status], [TotalCost])
VALUES
    ('1', '1', '2', 'Ford F-150', 'READY', '230'),
    ('2', '1', '2', 'Ford F-150', 'READY', '200'),
    ('3', '2', '1', 'Ford Mustang', 'WAITING', '100'),
    ('4', '3', '3', 'Toyota Prius', 'WORKING', '1254')
;
于 2017-09-23T15:06:16.353 に答える