我有一个表,其中包含列name、client_name和requester_name。我需要将这些列的值从"Mic“更新为"Michael”。
以下是一些应该更新的记录:
name | client_name | requester_name
------+-------------+----------------
Mic | Jerry | Jack
Jack | Mic | Mic
Jerry | Jack | Mic
我尝试了以下查询:
UPDATE names
SET name='Michael',
使用条件从另一个表的列填充列时
UPDATE EVENT E
SET TIMESTART = (SELECT TIMESTART FROM EVENTSTEPS WHERE STEPNUMBER=1)
WHERE EVENTREF = (SELECT EVENTREF FROM EVENTSTEPS);
我在10g中得到了这个错误:
ORA-01427:单行子查询返回多行。
如果我想从其他表列填充表的列,我不知道应该做什么。有人能帮我吗?谢谢。
我在我的用户表单中有两个“组合框”和一个"txtbox“,在工作簿"sheet1”中,我在A列上有名称,在B列上有月份,C到N列是1月至12月,其中包含每个名称/特定月份的生产时间。
-cboName
-cboMonth
-txtHours
我使用下面的代码填充txtHours
Private Sub cboName_Change()
Dim EName As String
Dim Row, Col As Integer
EName = Me.cboName.Text
If EName <> "" Th
我有一个表用户(它有数百万行)
Id Name Country Product
+----+---------------+---------------+--------------+
1 John Canada
2 Kate Argentina
3 Mark China
4 Max Canada
5
我试图使用CASE语句在中创建一个字段,其中包括日期列和日期时间列。每当date列Start_Time为NULL时,datetime列Given_Timestamp就不为空。
问题
当Start_Time未被填充时,必须从Given_Timestamp中提取可视化的日期。我试过这样的说法:
CASE
WHEN Start_Time IS NULL THEN TODATE(Given_Timestamp, 'DEFAULT_DASH', '%d%m%Y')
ELSE Start_Time
END
(请注意,TODATE(Timestamp,'DEF
以下查询从表new_name返回所有names的结果集
SELECT
CASE
WHEN nickname = '' THEN fullname ELSE nickname END AS new_name,
FROM names
我试图通过new_name使用以下查询进行搜索
SELECT
CASE
WHEN nickname = '' THEN fullname ELSE nickname END AS new_name,
FROM names
WHERE ne
希望这是一个简单的问题。我没有处理过太多枚举,所以我不完全理解它们是如何工作的。在我的程序中,我试图将玩家的工作存储在枚举中。我需要的功能,该工作可以改变。我尝试使用switch语句,但它不会改变玩家的工作。
代码:
// if change is True, change the job. If false, simply return the current value
int GameModeState::changeJob(bool change)
{
int job = Landman; // Default job is landman
if (change ==
我有一个datatable,它在IEnumerable<AdjustmentErrorCodes> adjustmentErrorFile;中总共有23列
这个AdjustmentErrorCodes被定义为:
public class AdjustmentErrorCodes
{
public AdjustmentErrorCodes();
public string AdjustmentErrorCode { get; set; }
public string AdjustmentErrorCodesDescription { get; set; }
我有一个SQL结果,它返回列中存在某些数据的每一行的计数。我想根据结果对表中的两个列(P1和P2)中存在的分组值进行分组,当P1为NULL时,我想使用P2。
例如,我有一个初始查询结果,如下所示:
+------+------+----------+
| P1 | P2 | SomeData |
+------+------+----------+
| Bob | Mark | data |
| NULL | Bob | data |
| Mark | Tony | data |
| Mark | Sam | data |
| Mark | Bil
我有一个很大的case表达式
例如:
CASE WHEN ... THEN ... ELSE
CASE WHEN ... THEN ... ELSE '' END ELSE '' END +
CASE WHEN ... THEN ... ELSE
CASE WHEN ... THEN ... ELSE '' END ELSE '' END as [Test]
现在,Test列返回一些空值。我如何用(ISNULL,'')包装这个CASE表达式,这样如果它是NULL,它就是空的?
用一个非常大的case语句来实现这一点
这是我的CASE/WHEN语句。但正如你所看到的,我得到了这个错误。我也不知道原因。我所要做的就是检测到MAJKA字段中的某些东西何时发生了变化。因此,如果MAJKA列的其他字段为空,请不要接触它们,而是将MAJKA列中那些非空的字段的值更改为新值。
SQL Error: near "UPDATE": syntax error <CREATE TRIGGER [test]
AFTER UPDATE OF [MAJKA]
ON [unos_golub]
FOR EACH ROW
BEGIN
SELECT majka,
CASE WHEN majka='
select t1.Name, t1.[Code], t2.Name as ParentName
,case when len(t2.[ParentCode]) = '' then t1.[Code] else t2.[ParentCode] end as t1.[ParentCode]
,case when len([Descr])=0 then [Code] else [Descr] end as [Descr]
,t1.[Cumulative]
,t1.[Expense]
,t1.[Accts]
,t
我有一个名为compositeRate的列,它是一个decimal(10,2)数据类型。我正在写一个Select语句,如果compositeRate是0.00,它应该返回空字符串,但是我得到这个错误:消息8114,级别16,状态5,第1行将数据类型varchar转换为numeric时出错。
这是我的案例陈述
select CASE WHEN compositeRate = 0.00 THEN '' else compositeRate from table
你能告诉我我应该在case语句的什么地方写convert吗?
我使用它来创建一个视图,该视图包含表中的所有列,加上一个新列,该列的值基于另外两个列的计算结果。我可以在这里添加一栏:
CREATE VIEW `calculated_full` AS
SELECT *,
`planned`-`actual_widget` AS `widget_delta` FROM `joined_table` where product = "widgets"
基本上,这是说在这两列之间执行这种计算,但前提是第三列(product)具有一定的值。这个很好用。
但是,我需要这样做,以便向视图中添加另一个计算列,只有当第三列(product)具有不同的值时,
我正在编写我的第一个SQL CASE语句,我已经对它们做了一些研究。显然,由于上下文和类似性质的原因,实际的实践将与我读到的略有不同。我理解他们是如何工作的。我只是很难正确地形成我的想法。下面是我的SQL语句草稿,我试图返回两个值(来自版本A的code值和它的标题,或者来自版本B的code值和它的标题)。有人告诉我不能在一个CASE语句中返回两个值,但是我不知道如何重写这条SQL语句来提供我需要的所有值。有没有办法在CASE中使用CASE (就像在每个列的CASE语句中一样)?
附注:粘贴代码时,我删除了别名,只是为了使文章更简洁
SELECT
CASE
WHEN co
我有以下情况:
column 1 column 2 column 3
A 1 1
A 1 2
B 3 4
B 3 5
当第2栏中的值从未出现在第3栏时,我需要给我的字母涂上颜色,但我需要给所有的字母着色。有人知道如何为这个写一个案例陈述吗?
所以我将解释我的例子:我不需要给字母A涂颜色,因为第2和第3列和第一行是匹配的。我确实需要给我的B涂颜色,因为第2列和第3栏之间从来没有匹配。
我已经试过了
count(distinct(case when &
我有一个案例陈述来纠正雪花中的一个商业逻辑:
INSERT INTO DB.table_b
SELECT
CASE
WHEN UPPER(emp) <> LOWER(emp) THEN NULL
WHEN emp IS NULL THEN nullif(emp, 'NULL')
ELSE emp
END AS emp_no
FROM
DB.table_a;
“table_a”内容如下:
emp
-------
ABCD
N
我有一个Excel表,其中变量列在E列,它们的值列在G列
我想测试一下E是否包含单词"text" (我的变量)。如果是这样,那么我想用"This is my successful if statement text"替换列G中的相应单元格。
如果没有--我希望单元格要么保持不变(在excel中是不可能的),要么保持原来的值(我认为问题是它填充了文本,而不是数字)。
到目前为止我试过了
=if(e2="text", "Replace with this", G2)
以及
=if(e2="text", "rep
我在sql中有一个表,其中有一个名为message的列。我需要使用UDF来填充1或0,这取决于该子字符串是否包含'LHL‘。
我的代码:
create function dbo.generate
(
@result varchar(max)
)
returns int
as
begin
declare @message varchar(max) = (Select [message] from POST)
if (PATINDEX('%LHL%', @message) > 0)
be
我想使用一个CASE表达式更新一个表,但是我得到了一个错误,但是我没有设置空值:
无法将值NULL插入“column 2”列、表“表1”中;列不允许空值。更新失败。
我的代码:
UPDATE [Table 1]
SET [Column1] = '2',
[Column2] = CASE
WHEN [Column3] = 'A' THEN '1'
WHEN [Column3] = 'B' THEN '2'
我有一个简单的案例查询,但是我注意到了一些令人惊讶的事情--查询返回的数据类型取决于未使用的(而不是选择的)分支中的数据类型。
让我们考虑两个案例查询:
A1:
SELECT
CASE 1
WHEN 3 THEN '7'
ELSE 'text answer' END
FROM SomeDatabase
B1:
SELECT
CASE 1
WHEN 3 THEN '7'
ELSE float_attribute END
FROM SomeDatabase
A1查询将返回“相同”的B1查询将返回float_attribute的值(这是浮点类型的-重
“病人”表需要从“历史”表中更新。病人表在一行中包含所有历史记录,而历史表每行有一种类型的历史记录。如何使用下面这样的条件(我最好的尝试)来根据history_code值更新正确的列,该值指示了它是哪种类型的历史数据。
如能提供任何帮助,将不胜感激。
UPDATE AUS.dbo.patient SET
CASE
WHEN history_code = 'surgery' THEN surh = smh.condition
WHEN history_code = 'social' THEN soch = smh.condition