Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL语句来证明A->;a中的B(ABCD)_Sql - Fatal编程技术网

SQL语句来证明A->;a中的B(ABCD)

SQL语句来证明A->;a中的B(ABCD),sql,Sql,如何编写SQL语句来证明函数依赖性→ B保持给定的与属性ABCD的关系,知道没有记录具有空值吗?从顶部开始,这不一定是SQL查询。函数依赖的问题是通过适当的方法来解决的,特别是在考虑第二范式和第三范式时。如果您试图发现单个实体中的功能依赖关系,可能需要分解其属性并修改模式 如果您仍然希望动态地证明直接的函数依赖性,请构造一个满足 在给定的表中,一个属性Y被称为对一组属性X(X)具有函数依赖性→ Y) 当且仅当每个X值恰好与一个Y值关联时。例如,在包含属性“Employee ID”和“Employ

如何编写SQL语句来证明函数依赖性→ B保持给定的与属性ABCD的关系,知道没有记录具有空值吗?

从顶部开始,这不一定是SQL查询。函数依赖的问题是通过适当的方法来解决的,特别是在考虑第二范式和第三范式时。如果您试图发现单个实体中的功能依赖关系,可能需要分解其属性并修改模式

如果您仍然希望动态地证明直接的函数依赖性,请构造一个满足

在给定的表中,一个属性Y被称为对一组属性X(X)具有函数依赖性→ Y) 当且仅当每个X值恰好与一个Y值关联时。例如,在包含属性“Employee ID”和“Employee Date of Birth”的“Employee”表中,函数依赖项{Employee ID}→ {员工出生日期}将保留

通过选择A和B,然后确定其中一个是否相对于另一个重复,可以证明弱函数依赖性

为此,构造查询:
从ABCD中选择唯一的A、B。唯一集合{A,B}中的重复元素否定了函数依赖关系A→ B当且仅当A在集合内重复。如果A在一个足够大的数据集中相对于B不重复,B可以说是弱功能依赖于A。换句话说,“我们没有反驳功能依赖,我们有一个令人信服的统计论点,它可能是直接或传递的情况。”

更好的做法是确定有关被检查实体的附加信息。如果您可以这样做,请参考我关于上述规范化的原始建议。

从r1、r2中选择*,其中r1.A=r2.A和r1.B r2.B
SELECT * from R r1, R r2 where r1.A=r2.A and r1.B <> r2.B

如果FD保持不变,则返回一个空集。

您还可以按要检查的函数依赖项进行分组(在本例中为A->B),并计算每个A是否有不同的B

SELECT *  
FROM R 
GROUP BY A 
HAVING COUNT (DISTINCT B) > 1;
如果要检查A->B,C,可以展开查询:

SELECT *  
FROM R 
GROUP BY A 
HAVING COUNT (DISTINCT B) > 1 OR COUNT (DISTINCT C)>1;

“FD”有两种不同的用法,一种用于值,另一种用于变量。FD根据引用的定义在关系(表)中保存值。当FD在每个可能的数据库状态中保持其值(在以前的意义上)时,它保持在关系变量(基表)中。问题只是使用第一个意思。术语“弱FD”没有标准用法。这将检查a->B。如果我想检查AB->C怎么办?