当前位置: 首页 > 面试题库 >

根据另一列的值更新一列

屠嘉
2023-03-14
问题内容

我有一个名为Vendor的表,在此表中有一个名为AccountTerms的列,该列仅显示一个值(即0、1、2、3),依此类推。我也有一个要使用(ulARAgeing)的列,以反映该值的含义,例如:

0: Current
1: 30 Days
2: 60 Days

等等…

我需要的是一个脚本,它将查看AccountTerms中的值,然后将更新ulARAgeing以显示上面显示的单词值。我该怎么做呢?


问题答案:

我将尝试以一种尽可能简单的方式来解释这一点,以便于理解:

假设您有一个这样的表Vendor设置:

create table Vendor (AccountTerms int, ulARAgeing varchar(50));

然后,我们将为表中的两列插入一些样本值Vendor

insert into Vendor values
(0,'Test'),
(1,'Test1'),
(2,'Test2');

接下来,我们将编写一条update语句,以ulARAgeing根据AccountTerms同一表中列中的值更新您的列:

update vendor 
set ulARAgeing = (CASE 
                      WHEN AccountTerms = 0 
                        THEN 'Current'
                      WHEN AccountTerms = 1
                        THEN '30 Days'
                      WHEN AccountTerms = 2
                        THEN '60 Days'
                    END);

CASEWHENIF..ELSE大多数其他编程语言中的using语句相似。因此,这里我们将ulARAgeing根据when语句的情况将现有值更新为不同的字符串值。因此,例如对于if,AccountTerms = 0我们将其值更新为ulARAgeing“ Current”,依此类推。

要检查上面的语句是否正常工作,您只需要运行上面的update语句,然后再次从表中选择:

 select * from Vendor;

结果:

+--------------+-----------------+
| AccountTerms |   ulARAgeing    |
+--------------+-----------------+
|            0 |         Current |
|            1 |         30 Days |
|            2 |         60 Days |
+--------------+-----------------+

**SQL Fiddle Demo**



 类似资料:
  • 问题内容: 这个问题已经在这里有了答案 : SQL UPDATE SET哪一列等于另一列引用的相关表中的值? (10个答案) 7年前关闭。 我有两张桌子 table1(id,item,price)值: .... table2(id,item,price)值: 现在我要: 我该怎么做? 问题答案: 这样的事情应该做到: 您也可以尝试以下操作:

  • 问题内容: 我有下表。 我想选择的每一个具有最低。 当我得到所需的内容后,一旦添加了列,就需要将其也添加到GROUP BY子句,当我需要的只是每种类型的最低要求时,它返回所有行。 问题答案: 在标准SQL中,这可以使用窗口函数来完成 但是,Postgres具有运算符,该运算符通常比带有窗口函数的相应解决方案要快:

  • 我有一个数据库,其中多个变量显示为连续的行(如下所示,变量由其标记区分)。因此,它们的值在“值”列中显示为连续行。 现有表格: 对于数据分析,我需要将每个变量的值拆分为单独的列,如下所示。 下面列出了SQLite查询。我曾尝试使用分组标记并平均值,但结果变得过于细粒度,无法使用。 建议将不胜感激!

  • 问题内容: 我需要基于Pandas数据框中的另一列的值来设置一列的值。这是逻辑: 我无法做到这一点,我想要做的就是简单地创建一个具有新值的列(或更改现有列的值:任何一个都对我有用)。 如果我尝试运行上面的代码,或者将其编写为函数并使用apply方法,则会得到以下信息: 问题答案: 一种方法是将索引与配合使用。 例 在没有示例数据框的情况下,我将在此处进行补充: 假设您想 创建一个新列 ,除wher

  • 问题内容: 我有这张叫 shop的 桌子: 我也有这张桌子叫做 item : 我主要想做的是:根据 项目* 表的 item_price 更新 shop 表的* item_price * 。 * 免责声明 询问此查询的目的是从item item_price表中填写我的商店item_price。但是将来的商店item_price的价值将与item_price的价值不同。 例如: 从商店购买的商品将使用

  • 我试图用Python复制我的Stata代码,我被指向熊猫的方向。然而,我很难思考如何处理数据。 假设我想遍历列标题“ID”中的所有值。如果该ID与一个特定的数字匹配,那么我想更改两个相应的值FirstName和LastName。 在Stata,它看起来像这样: 因此,这将替换 FirstName 中与 ID == 103 到 Matt 的值对应的所有值。 在熊猫身上,我正在尝试这样的东西 不知道该