MySQL视图模型及关联模型理解

本文探讨了在SQL中如何正确处理一对多的关系型数据。针对一个字段存储多条记录的问题,文章通过具体示例展示了使用子查询时可能出现的错误及解决方法,并讨论了一对多关系在数据库模型中的实现。

表的结构是一维的,也就是说,表的每一条记录的每个字段的值,不能是复杂数据类型,诸如,不能给某一字段存个array进去。举个例子,一个问题有多个回答,一对多,这样写SQL语句:

SELECT question_id,(SELECT answer_id FORM table_answer b WHERE a.question_id = b.question_id) answer_id FROM table_question a

是不行的,会提示什么子查询返回多条记录的错误提示,这样修改SQL语句就可以:

​SELECT question_id,(SELECT answer_id FORM table_answer b WHERE a.question_id = b.question_id LIMIT 1) answer_id FROM table_question a

那么,框架的关联模型中ONE_MANY(一对多)中的一条主记录(实现为数组)中某个字段的值是多条记录(实现为数组)怎么实现的,联结也不行啊。

同时,上面的的SQL语句能实现,也说明一点,给表、字段取别名的AS关键字不是必须的。​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值