Questions tagged «coalesce»

8
即使第一个参数不为NULL,SQL Server也会读取所有COALESCE函数吗?
我正在使用T-SQL COALESCE函数,其中第一个参数在运行的大约95%的时间内不会为null。如果第一个参数为NULL,则第二个参数将是一个漫长的过程: SELECT COALESCE(c.FirstName ,(SELECT TOP 1 b.FirstName FROM TableA a JOIN TableB b ON .....) ) 例如,c.FirstName = 'John'如果SQL Server仍然可以运行子查询? 我知道使用VB.NET IIF()函数,如果第二个参数为True,则代码仍会读取第三个参数(即使不会使用)。

1
将元素上载到表中时,“列引用不明确”
我正在使用PostgreSQL作为数据库。我需要在数据库中创建一个条目,如果该条目已经存在,则只需更新其字段即可,但是只有未设置该字段时,才应更新其中一个字段。 我已经从这个问题中使用过信息:https : //stackoverflow.com/questions/13305878/dont-update-column-if-update-value-is-null,它与我所拥有的很相关。 我尝试使用此查询,但是当我运行它时,它出现以下错误Column reference 'affiliate_code' is ambiguous: INSERT INTO accounts (id, token, affiliate_code) VALUES (value1, value2, value3) ON CONFLICT (id) DO UPDATE SET token = value2, affiliate_code = COALESCE(affiliate_code, value3); (当然,实际值将被替换)。 如果我替换affiliate_code = COALESCE(affiliate_code, value3)为affiliate_code = value3,则一切正常,但并非以我希望的方式运行。 我该如何工作? 这是我的表格的定义方式: CREATE TABLE accounts ( id VARCHAR NOT NULL UNIQUE, …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.