# SQL命令

By [64568.eth](https://paragraph.com/@64568) · 2024-01-29

---

原文链接：

[https://docs.spaceandtime.io/docs/sql-commands](https://docs.spaceandtime.io/docs/sql-commands)

我可以用 SQL 做什么？

结构化查询语言（SQL）是一种用于在关系数据库中存储和处理信息的编程语言。

Space and Time 是一个符合 ANSI 标准、符合 ACID 的数据仓库，这意味着它接受标准 SQL，与任何其他关系数据库相同。如果您需要温习 SQL 编写，请查看[此资源](https://www.w3schools.com/sql/)。

您可以针对以下对象运行 SQL：

*   您自己的空间和时间表，包含您摄取的链外数据
    
*   包含我们从主要链索引的关系型实时区块链数据的表
    

> 📘试试看！
> ------
> 
> [跳转到我们的 API 参考页面，在我们的SQL API](https://docs.spaceandtime.io/reference/sql-overview)上尝试这些命令。

SQL命令的类型
========

要使用空间和时间，您需要了解三个 SQL 命令：

数据查询语言
------

数据查询语言 (DQL) 是一种用于从数据库检索数据的 SQL 命令。换句话说，它用于运行查询。

DQL 仅与一个命令关联：。命令的语法如下：`SELECTSELECT`

SQL

    SELECT column1, column2, ...  
    FROM table_name;
    

以下是您可能在 Space and Time 中运行的 DQL 命令的示例：

SQL

    SELECT EXCHANGE_NAME, COUNT(*)  
    FROM ETH.DEX_TRADE  
    GROUP BY EXCHANGE_NAME  
    ORDER BY 2 DESC
    

数据定义语言
------

数据定义语言 (DDL) 更改表的结构。换句话说，它用于配置您的表。

DDL 与以下命令相关联：

*   `CREATE`：用于在数据库中创建新表。该命令的语法如下：`CREATE`
    

SQL

    CREATE TABLE table_name (
        column1 datatype,
        column2 datatype,
        column3 datatype,
       ....
    );
    

以下是您可能在 Space and Time 中运行的语句示例：`CREATE`

SQL

    CREATE TABLE My_User_Wallets (
      User_Wallet_Address VARCHAR PRIMARY KEY,  
      User_Subscription VARCHAR
    ) WITH "publicKey=4c4d31237894198ab4174f8b49f9e9dc370737bcc4e741897ba56e86ffb5fa2f,accessType=public_write"
    

*   `DROP`：用于删除表中存储的结构和记录。该命令的语法如下：`DROP`
    

SQL

    DROP TABLE table_name;
    

以下是您可能在 Space and Time 中运行的语句示例：`DROP`

SQL

    DROP TABLE My_User_Wallets;
    

数据管理语言
------

数据操作语言（DML）修改数据库。换句话说，它用于更改表中的数据。

DML 与以下命令相关联：

*   `INSERT`：用于向表的行中插入数据。该命令的语法如下：`INSERT`
    

SQL

    INSERT INTO table_name (column1, column2, column3, ...)
    VALUES (value1, value2, value3, ...);
    

以下是您可能在 Space and Time 中运行的语句示例：`INSERT`

SQL

    INSERT INTO My_User_Wallets (User_Wallet_Address, User_Subscription)  
    VALUES ('0x456008396BFdd64159998cE362b8D650FFd6F28b', 'premium')
    

*   `UPDATE`：用于更新或修改表中某列的值。该命令的语法如下：`UPDATE`
    

SQL

    UPDATE table_name
    SET column1 = value1, column2 = value2, ...
    WHERE condition;
    

以下是您可能在 Space and Time 中运行的语句示例：`UPDATE`

SQL

    UPDATE My_User_Wallets  
    SET User_Subscription = 'premium'  
    WHERE User_Wallet_Address = '0x456008396BFdd64159998cE362b8D650FFd6F28b' 
    

*   `DELETE`：用于删除表中现有的记录。该命令的语法如下：`DELETE`
    

SQL

    DELETE FROM table_name WHERE condition;
    

以下是您可能在 Space and Time 中运行的语句示例：`DELETE`

SQL

    DELETE FROM My_User_Wallets WHERE User_Subscription = 'expired'

---

*Originally published on [64568.eth](https://paragraph.com/@64568/sql)*
