首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在没有PK (MySQL)的情况下连接两个属性

如何在没有PK (MySQL)的情况下连接两个属性
EN

Database Administration用户
提问于 2019-10-18 23:45:28
回答 1查看 173关注 0票数 0

我是一个新的程序员,我正在用phpmyadmin在MySQL上做一个数据库。我对此表示怀疑--我知道,如果您想连接两个不同的表,您需要一个主键的属性,另一个是外键的属性。在这种情况下,我希望将一个普通属性从一个表链接到另一个表,如下所示:

表1:身份证(PK)、年龄、生日、姓名、收费;

表2: id( PK),部门,名称,费用(参考);

因此,例如,我可以将“电荷”值引入第一个表,然后,当我访问表2时,它将具有该值,因为它是一个调用PK的FK,或者在其他情况下,我可以将表1的PK与表2连接起来,这样我就可以像这样向它提供任何属性:

表1: id1 (PK),年龄,生日,姓名,费用;

表2: id2,id2 (FK),部门,名称,费用(参考);

有办法做这个吗?

EN

回答 1

Database Administration用户

发布于 2019-10-19 02:32:22

您是正确的,因为连接两个表的最常见方法是使用引用主键的外键。但这不是一项要求。SQL将对您希望在JOIN子句中使用的任何两列起作用(即语法正确),只要可以将这些列的类型强制设置为类似的类型。问题是,比较是否有意义(即语义正确)?

举个例子,你可以选择为不同的员工储存鞋码和智商。那么查询.. inner join .. on employee.shoesize = manager.IQ是一个语法正确的语句,但(很可能!)毫无意义。

还可以考虑一下连接两个表意味着什么。从概念上讲,这意味着您依次从第一个表中获取每一行,并将其与第二个表中的每一行组合起来。保留联接条件( "ON“子句)为true的合并行,并丢弃其为false的行。

回到你的特殊例子。表1.收费和表2的含义是否允许进行比较,并仍然满足系统的业务规则?表1.收费中的值是否足够独特,以确保只匹配那些要匹配的行?作为反例,如果所有费用都是标准金额,那么Table1中的每一行都将与Table2的每一行相匹配。

如果你能把这两个问题都回答为“是”,那就去回答吧。否则你就得重新设计了。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/251505

复制
相关文章
【类型挑战】获取函数返回类型,难度⭐️⭐️
Dear,大家好,我是“前端小鑫同学”,😇长期从事前端开发,安卓开发,热衷技术,在编程路上越走越远~ 知识运用: 认识什么是returntypetype。 题目分析: 题目地址:2-medium-return-type 如上图所示,我们需要设计一个通用了类型工具还提取函数类型的返回类型,功能同内置的ReturnType。 题目解答: 测试用例: 给出的测试用例挺多但是没有特殊需要说明的,我们只需要通过设计的类型工具取出到通过Equal来进行比较即可。 /* _____________ 测试用例 _
前端小鑫同学
2022/12/26
1.2K0
【类型挑战】获取函数返回类型,难度⭐️⭐️
习题21:函数可以返回东西
注释:上面例子,创建了加减乘除数学函数:add,subtract,multiply,以及divide 重要的是函数的最后一行,例如add的最后一
py3study
2018/08/02
2680
函数出错返回的数据类型
返回NULL值有各种弊端,对此有一个比较经典的应对策略,就是应用空对象设计模式(Null Object Design Pattern)。
WindCoder
2020/04/09
2.2K0
父类返回子类类型的函数写法
我们有这么一个类,一看就是要写 Builder 模式。不过由于我们的这个 Event 的类型比较多,因此希望写一个父类,来一个子类感受下:
bennyhuo
2020/02/20
4.8K0
【Kotlin】函数 ③ ( 匿名函数 | 匿名函数的函数类型 | 匿名函数的隐式返回 )
Kotlin 中对 CharSequence 类进行了扩展 , 定义了 count(predicate: (Char) -> Boolean) 扩展函数 , 接收一个 (Char) -> Boolean 类型的函数 , 用于 返回匹配给定 匿名函数 的字符数 ;
韩曙亮
2023/03/30
3.1K0
【Kotlin】函数 ③ ( 匿名函数 | 匿名函数的函数类型 | 匿名函数的隐式返回 )
基于 Python 的 Crypter 可以绕过任何类型的防病毒产品
在 github 上查找任何基于 Python 的后门/RAT。 用 pycrypt 加密它的有效载荷 现在使用 pyinstaller 将加密的有效负载转换为 exe KleenScan 扫描仪结果 生成的 stub.py 结果:-https://kleenscan.com/scan_result/39e61c692ee91dd6cd48aca77a8bb220ef27fcc40df75807d4a1f96b4db8df69 加密代码结果:-https://kleenscan.com/scan_res
Khan安全团队
2023/02/23
4200
基于 Python 的 Crypter 可以绕过任何类型的防病毒产品
【Kotlin】函数 ⑧ ( 函数引用 作为函数参数 | ::函数名 | 函数类型 作为函数返回值类型 )
函数引用 可以将 具名函数 转为 函数的参数值 , 只要可以使用 Lambda 表达式 参数的地方 , 就可以使用 函数引用 进行替代 ;
韩曙亮
2023/03/30
2.9K0
【Kotlin】函数 ⑧ ( 函数引用 作为函数参数 | ::函数名 | 函数类型 作为函数返回值类型 )
【Python】类型注解 ④ ( 函数类型注解 | 函数形参类型注解语法 | 函数返回值类型注解 )
由于定义 函数 时 , 没有为 函数形参 设置 类型注解 , 编写函数时 , PyCharm 工具无法提示没有类型的形参 :
韩曙亮
2023/10/11
3750
【Python】类型注解 ④ ( 函数类型注解 | 函数形参类型注解语法 | 函数返回值类型注解 )
Golang 函数返回类型是接口时返回对象的指针还是值
Interface 是一组抽象方法(未具体实现的方法,仅包含方法名参数返回值的方法)的集合,如果实现了 interface 中的所有方法,即该类型就实现了该接口。
恋喵大鲤鱼
2019/06/14
8.1K0
【Kotlin】函数类型 ( 函数类型 | 带参数名称的参数列表 | 可空函数类型 | 复杂函数类型 | 带接收者函数类型 | 函数类型别名 | 函数类型实例化 | 函数调用 )
函数类型格式 : 圆括号中定义 参数类型列表 , 使用 -> 由参数列表指向返回值类型 , 表示接受 参数类型列表 中的参数 , 返回 返回值类型 的返回值 ;
韩曙亮
2023/03/27
2.8K0
Python常看函数用法,返回值类型
在面向对象编程中,python 类有多继承特性,如果继承关系太复杂,很难看出会先调用那个属性或方法。
北山啦
2022/10/31
1.1K0
(十四)给函数返回值添加类型
在 TypeSctipt 中可以自动对返回值进行类型的推断,当然也可以手动限定返回值
老怪兽
2023/02/22
9580
mybatis返回值为map类型时怎么处理_构造函数不能有返回类型
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/09
1.8K0
mybatis返回值为map类型时怎么处理_构造函数不能有返回类型
C语言指针做函数参数,指针做函数返回类型
有时候我们可以使用函数的返回值来回传数据,在简单的情况下是可以的,但是如果返回值有其它用途(例如返回函数的执行状态量),或者要回传的数据不止一个,返回值就解决不了了,所以要引用上指针来传递。
C语言中文社区
2022/11/08
2.6K0
C语言指针做函数参数,指针做函数返回类型
C++模板取函数参数类型和返回值类型的方法
static_assert(is_same_v<decltype(f), int(int, short, float)>);
用户7886150
2021/02/03
4.2K0
Python 字符串中返回bool类型的函数集合
字符串中返回bool类型的函数集合 isspace 功能: 判断字符串是否是由一个空格组成的字符串 用法: booltype = string.isspace() -> 无参数可传 ,返回一个布尔类型 注意: 由空格组成的字符串,不是空字符串 : “’!=‘’’ istitile 功能: 判断字符串是否是一个标题类型 用法 booltype = String.istitle() -> 无参数可传, 返回一个布尔类型 注意: 该函数只能用于英文 isupper与islower 功能: isupper判断字
Zkeq
2022/05/18
2.4K0
【Kotlin】函数 ② ( Unit 函数 | TODO 函数抛出异常返回 Nothing 类型 | 反引号函数名 )
Kotlin 语言 中 没有返回值的函数 其返回类型是 Unit , 该函数又称为 Unit 函数 ;
韩曙亮
2023/03/30
9120
【Kotlin】函数 ② ( Unit 函数 | TODO 函数抛出异常返回 Nothing 类型 | 反引号函数名 )
列表类型
序列是python中最基本的数据结构.序列中的每个元素都分配一个数字(它的位置或索引),第一个索引是0,第二个索引是1,一次类推.
py3study
2020/01/20
4840
【Python】函数进阶 ① ( 函数返回多个返回值 | 函数参数传递类型简介 | 位置参数 | 关键字参数 )
在函数中 , 如果要 返回 多个返回值 , 可以 在 return 语句中 , 设置多个返回值 , 这些返回值之间使用 逗号 隔开 , 这些返回值的类型是 元组 tuple 类型的 ;
韩曙亮
2023/10/11
1.6K0
什么?函数类型重载还可以动态生成?
函数可以用 interface 的方式声明,同样,也可以用 interface 的方式声明函数重载:
神说要有光zxg
2022/04/12
3320
什么?函数类型重载还可以动态生成?

相似问题

不带任何返回类型的函数

30

函数返回任何类型的指针?

14

如何设置函数的类型,该函数是函数参数,可以具有任何参数和任何返回

23

可以执行任何类型的函数的函数

11

定义返回任何类型的命名函数类型

215
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文