问题标签 [sql-null]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 从 UNION 集合运算符中消除 NULL 值
我们应该如何消除 NULL 值而不是将其保留在单独的行中,值必须驻留在列中,因此通过使用执行结果集中的联合集运算符使 NULL 值消失?
考虑简单的 SQL 查询
实际结果:
预期结果:
SQL 演示
mysql - 聚合来自 UNION 集合运算符的值
我们应该如何聚合值,如果单个列中有两个值并且其余列包含 NULL 值,那么所有值都需要进行分组,并且列的其余部分应该显示 NULL 作为价值观
我们需要迭代每个列值,移动到顶部并将 NULL 值下一个/底部移动到该特定值,如果单个列中有两个值并且其余列包含 NULL 值,那么所有值都需要移动到顶部,将剩余的 NULL 值留在底部,如果一行中没有值,则它应该简单地显示为 NULL
考虑简单的 SQL 查询
实际结果:
预期结果:
SQL 演示
编辑:
正如 Gordon Linoff 所说,在 MySQL 8+ 中可以使用 row_number() 和 joins 因为我期待通过 SQL Demo 获得满足预期结果的精确解决方案。由于帖子被搁置
sql - 使用 Powershell NULL 值更新或插入 SQL
如果值不存在,试图弄清楚如何添加 MSSQL-Null 值。
到目前为止,这有效,它将插入新行,如果匹配,它将更新列。但是,如果没有指定终止日期,而不是在数据库中分配一个空值,它将写入 1900-01-01 并且文本字段将为空白而不是空。
尝试添加 +[DBNull]::Value 但没有做任何更改。有点没主意了。:)
用户.CSV:
mysql - SELECT MAX(...) 在存储过程中错误地返回 NULL
我有一张桌子,里面ga_sum_1
有一列created_timestamp
。当我从 mysql 命令行执行以下查询时:
如果我从一个非常简单的存储过程中做同样的事情:
但是,当我在存储过程中这样做时:
在最后一个例子中我做错了什么?
====编辑====
一些进一步的研究表明,它是declare created_timestamp
- 显然混淆了同名列上的选择!
mysql - MySQL Workbench,NULL 的平均值返回“0”,我需要它返回 NULL
我正在尝试平均我的情节级别数据。当我在绘图级别执行查询时,它会导致与某些行名关联的所有行都为“NULL”。当我执行相同的查询尝试按行名对特征和分组进行 AVG 时,结果显示为“0”。我需要它显示“NULL”,这样它就不会影响我的平均数。
选择绘图级数据的示例代码:
结果:
选择平均值的示例代码:
结果:
当平均 3 个“NULL”值时,我希望在结果中看到“NULL”而不是“0”,因此它不会影响我在下游执行的任何大均值计算。
sql - IsNull returns TRUE when inserting empty (NOT NULL) strings in a LONG VARCHAR field (SQL Anywhere)
Delphi 10.3.2 enterprise, database ASA (SQL Anywhere 17.0.9.4913).
I have this table
and I want to insert records using FireDAC TFDConnection
and TFDQuery
components.
If I assign non-empty strings, everything works properly.
If I insert a record using empty strings (empty, not null!)
the IsNull
property on the LONG VARCHAR field returns TRUE even if it has been assigned a NOT NULL value (the empty string), while the short field behavior is correct.
(The property FormatOptions.StrsEmpty2Null
for both the connection and the query is FALSE).
Furthermore, when I execute the Post()
method, Delphi raises the exception on the LONG VARCHAR
field:
Field 'str_long' must have a value
If I set
the record is successful inserted in the database, with empty strings values.
To make short a long story: if I insert a record with empty string values in a LONG VARCHAR
field, the IsNull
property returns a wrong value and I have to assign Required := False
in order to get the INSERT
operation executed.
In this small demonstrative application I try to insert
a record with NOT EMPTY strings (and everything works properly)
a record with EMPTY strings.
I have not tested the behavior with other databases.
mysql - 试图选择最大列学年
我正在尝试遵循这个问题的答案。
但是它对我不起作用,我不明白为什么。
我的 SQL 与 Adrian 在他的回答中的几乎完全相同,但它没有产生相同的结果。基本上,该student-history
表有一个tinyint(1)
名为的列school-year
,通常是 1-3 之间的数字。每个用户可以有多个条目。所以我想找到最高的年份行。
我不完全理解他的回答,所以我真的无法继续前进,但如果有人可以帮助我了解我哪里出错了,那就太好了。
如果我添加到WHERE
上述语句中的子句以按用户缩小范围,例如AND h.userID = 54
,我仍然会得到三行学生在场的所有三年。LEFT OUTER JOIN
似乎根本没有什么不同。
sql - 左连接内左连接
我从表中获取值时遇到问题。
我需要这样的东西
表 A 和 B 以及表 B 和 C 连接在一起。表 A 可以具有表 B 中的一个/零或多个值。同样的情况适用于表 C 中的值。
我需要在表 B 上的表 A 上执行左连接,并在表 C 上的表 B 上执行左连接。
我尝试使用表 A 和 B 的左连接,但不知道如何在左连接中执行左连接。
那可能吗?它的语法是什么样的?
编辑:数据看起来像这样
sql - SQL 查询的 NULL NOT IN (Empty_Relation) 在不同的引擎上表现出不同的行为
我尝试了一个在 Postrgresql、Spark 上测试 NULL NOT IN Empty_Relation 的查询,我得到了不同的结果。
Postgresql 输出 1。其他输出 0。
我理解 NOT IN 的 NULL 行为,但我的子查询是空关系,这种情况似乎更有趣。有很多帖子讨论 NOT IN,但我没有找到任何与 NOT IN Empty_Relation 相关的内容。
所以我的问题更像是 ANSI SQL 是否定义了这种行为,或者这实际上是一个灰色区域,两个答案都可以接受。
sql - Hdp、Hive、横向视图和空:消失的行
由于从 hdp 3.1.0 升级到 3.1.4,我在 Hive 中遇到了一些我不明白的问题。请注意,我只使用 ORC 事务表。
例如这个查询:
它在升级之前完美运行。
现在,即使 CTE 返回一定数量的行,使用横向视图只会从结果集中删除行,没有任何错误,而 CTE 之外没有额外的 where 子句(在我的实际示例中,查询返回 66 行没有侧视图,但只有 19 个)。
就我而言,我有:
select count(*)
给我66行- 当添加静态字符串的横向视图时,我只得到 19 行。
我尝试了很多变化:
- 如果我用静态 CTE ( ) 替换事件表,
select stack(1, ...)
我会得到我期望的结果 - 如果我删除横向视图,我有我期望的行数(只要我不使用不同)
- 如果我创建并使用临时表而不是 CTE,则结果不会改变。
- 如果我将
json_tuple(cte.json, 'customfield')
选择部分放在 CTE 之外(没有其他内容,因为它无效),没有lateral view
,我有预期的行数, - 如果我
get_json_object
在 CTE 之外的选择部分中使用(并且没有侧视图),我会得到预期的结果。 - 当然,配置单元(服务器或元存储)日志中没有任何内容。
- 附带说明一下,自从升级以来,一个
merge
语句[不断生成重复项][1],而之前它工作得很好。
另一个非常令人惊讶的是,在 CTE 内部有一个 if 语句,例如:if(is_deleted is null, 'true', 'false')
. 如果我替换应该完全有效的is null
with ,CTE 不会返回任何行。is not distinct from null
我完全不知所措,我不知道为什么会发生这种情况,也不知道我怎么能相信蜂巢。
我无法通过生成手动数据来复制错误,因此我无法给出(不)工作示例。