155得票3回答
PostgreSQL多列唯一约束和NULL值

我有一个类似以下的表格: create table my_table ( id int8 not null, id_A int8 not null, id_B int8 not null, id_C int8 null, constraint pk...

142得票8回答
为什么我们不应该允许NULL值?

我记得读过一篇关于数据库设计的文章,它提到应该将字段属性设置为NOT NULL。但是我忘记了为什么要这样做。 我能想到的唯一原因是,作为应用程序开发人员,你不需要测试NULL和可能不存在的数据值(例如,字符串为空字符串)。 但是在日期、日期时间和时间(SQL Server 2008)的情况...

103得票8回答
SQL Server在执行COALESCE函数时,即使第一个参数不为NULL,也会读取所有的参数。

我正在使用一个 T-SQL 的 COALESCE 函数,其中第一个参数在大约 95% 的情况下不会为 null。如果第一个参数是 NULL,则第二个参数是一个相当冗长的过程。 SELECT COALESCE(c.FirstName ,(SELECT TOP 1...

62得票4回答
选择 count(*) 和 select count(any_non_null_column) 之间有什么区别?

我好像记得(在Oracle上)在发出select count(*) from any_table和select count(any_non_null_column) from any_table之间有一些区别。 如果有的话,这两个语句之间有什么区别?

60得票5回答
为什么将列更改为NOT NULL会导致日志文件大量增长?

我有一张表格,其中有64百万行数据,占用硬盘空间4.3 GB。 每一行大约有30个字节的整数列,加上一个变长字符列NVARCHAR(255)用于文本。 我添加了一个可为空的列,数据类型为Datetimeoffset(0)。 然后,我为每一行更新了这个列,并确保所有新插入的行都在这个列中放...

55得票7回答
如果一个人的名字是Null,那么它会如何破坏数据库呢?

我正在阅读BBC上的this文章。它讲述了一个名叫珍妮弗·纳尔的人如何在使用在线数据库(如预订机票、网上银行等)时面对日常问题。 我不精通数据库,也不经常使用它。当我为学习制作网站时,服务器端表单验证使用了正则表达式。据我记得,它可以轻松接受“Null”这个名字。虽然我没有尝试过。 有人能...

42得票2回答
默认是NULL还是NOT NULL?

在MySQL中,除非你知道一个字段是必需的,否则最好始终允许空值,或者除非你知道一个字段将包含空值,否则始终使用Not Null。或者这并不重要吗? 我知道在一些数据库管理系统中,他们建议尽可能使用Not Null,因为允许空值需要额外的位(或字节)来存储空值状态。

30得票3回答
为什么 ANSI SQL 将 SUM(no rows) 定义为 NULL?

ANSI SQL标准(第6.5章,集合函数规范)对于空结果集上的聚合函数定义了以下行为: COUNT(...) = 0 AVG(...) = NULL MIN(...) = NULL MAX(...) = NULL SUM(...) = NULL 对于AVG、MIN和MAX返回NULL是...