多个字段共同作为主键的查询问题
表TableA 字段有courseNO,Name,Majorno ,
courseno和majorno做主键
如 courseno name majorno
1 a 1
1 b 1
1 c 2
1 a 2
1 b 3
2 c 1
2 d 1
我想查出的结果是
courseno majornno name
1 1 a,b
1 2 c,a
1 3 b
2 1 c,d
我想着用临时表处理…… 但弄了很长时间没查出来,不知道到底该对哪列上建游标
代码就不贴了吧……
我的思路是:在courseno上建立游标,循环查询每一行,在查询前先记录本行的courseno和majorname,之后与上一行做比较,
如果courseno相同而majorno不同,就update 临时表,
如果courseno相同且majorno相同,无操作
如果couseno不同,insert临时表
courseno和majorno做主键
如 courseno name majorno
1 a 1
1 b 1
1 c 2
1 a 2
1 b 3
2 c 1
2 d 1
我想查出的结果是
courseno majornno name
1 1 a,b
1 2 c,a
1 3 b
2 1 c,d
我想着用临时表处理…… 但弄了很长时间没查出来,不知道到底该对哪列上建游标
代码就不贴了吧……
我的思路是:在courseno上建立游标,循环查询每一行,在查询前先记录本行的courseno和majorname,之后与上一行做比较,
如果courseno相同而majorno不同,就update 临时表,
如果courseno相同且majorno相同,无操作
如果couseno不同,insert临时表
...全文
相关推荐
初探SQL语句复合主键与联合主键
在设计时,还需要考虑到主键对查询性能的影响,以及可能的冗余和更新问题。5. **总结**: 总的来说,复合主键和联合主键都是为了保证数据库中的数据完整性,通过多个字段的组合实现唯一标识。
MySQL - count(字段)、count(主键)、count(1)、count(*)的区别
该章节内容很少,只是针对MySQL - count(字段)、count(主键)、count(1)、count(*)的区别,进行的一个简短的记录。
双主键表从复
在数据库设计中,"双主键表"是指一个表中具有两个或多个字段共同作为主键,这样的设计通常用于确保数据的唯一性和完整性。主键是数据库表中的一个或一组字段,它们的值在所有记录中都是唯一的,且不可为空。
android ormlite 模拟实现联合主键
ORMLite虽然功能强大,但默认并不直接支持联合主键,即由两个或多个字段共同构成唯一标识的主键。在某些情况下,我们可能需要创建这样的表结构,比如在关联多个实体时。
数据库表设计.docx
主键可以是自增字段,如`id`,也可以是其他字段,但最好选择与业务逻辑无关的字段,以减少潜在的问题。如果需要多个字段共同构成唯一标识,可以设置复合主键。表间关系是数据库设计的另一个关键方面。


疑难问题
