如何使用 table 名称作为值创建新列 - SQL

How to create a new column with the table name as value - SQL

首先,我刚开始使用 SQL。 我已经在 Internet 上查看过,发现我可以使用 ALTER TABLE 函数将新列插入到选项卡中。不幸的是,我认为这不是我要找的,因为我不想修改已经存在的 table。我正在寻找的东西非常简单,但我不知道如何在 SQL 中进行,因为我主要使用 R.

示例:

table 姓名=dataset1

当前数据:

 ID     NAME SALARY
  1     John 100000
  2     Mike  80000
  3 Rachelle  90000

我希望将什么作为我的新输出:

 ID     NAME SALARY FROMDATA
  1     John 100000 dataset1
  2     Mike  80000 dataset1
  3 Rachelle  90000 dataset1

我知道这非常简单,但我不想修改服务器上的数据,我只想制作一个副本,其中包含我将在之后保存的数据集名称的列。它甚至可以像简单地创建一个列一样简单,我手动编写数据集的名称。我知道用 R 需要 0.01 秒,我觉得很蠢,但我对 SQL 一无所知,我今天必须使用它。

谢谢,抱歉打扰了大家。

Select 常量字段:

SELECT ID, NAME, SALARY, 'dataset1' AS FROMDATA
FROM dataset1;

当您想要合并两个或多个 table 但 select 跟踪 [=18= 的列时,此技巧更有用,也更常见] 资源。例如:

SELECT ID, NAME, SALARY, 'dataset1' AS FROMDATA FROM dataset1
UNION ALL
SELECT ID, NAME, SALARY, 'dataset2' FROM dataset2   -- assuming this table exists
ORDER BY FROMDATA;

如果您使用 select 提取数据,您可以轻松添加您的列,而无需实际更改 table 的结构。例如。 select *, 'dataset1' as FROMDATA from dataset1;。另一种方法是创建一个 view 定义为数据集 1 的 select 加上要添加的静态列