查询mysql设置字段默认值对应另一mysql设置字段默认值不同值的值

查看: 4018|回复: 3|
在线时间175 小时经验11 威望0 性别男最后登录注册时间阅读权限10UID1915849积分11帖子精华0分享0
EH新人, 积分 11, 距离下一级还需 9 积分
积分排行3000+帖子精华0微积分0
如题,附件中姓名列会有重复,字段和记录都很多,给出一部分,如何找出既买过香蕉也买过苹果的人并输出他们的所有包含香蕉或苹果的购买记录(需输出全部字段:姓名、购买物、购买数量、AAAA、BBBB、CCCC......)
这个附件我想要的最终输出结果应是1、2、4、5、6
求高手指点。。万分感谢。。
(27.39 KB, 下载次数: 41)
16:26 上传
下载次数: 41
在线时间5158 小时经验5062 威望11 性别男最后登录注册时间阅读权限100UID742835积分6712帖子精华2分享0
管理以下版块
积分排行127帖子精华2微积分14
SELECT B.* FROM
(SELECT 姓名 FROM
(SELECT DISTINCT 姓名,INSTR(购买物,'香蕉')=TRUE AS 香蕉,INSTR(购买物,'苹果')=TRUE AS 苹果
FROM 表1)
GROUP BY 姓名
HAVING -2&=SUM(香蕉+苹果))A,表1 B
WHERE A.姓名=B.姓名 AND INSTR('香蕉苹果香蕉',B.购买物)复制代码一条记录只能有一个商品,如ID为4的记录,应该分拆为两条记录。香蕉一条,苹果一条。不然,在后期处理时,会遇到很多麻烦。
如果你需要我的帮助,请给我发短消息,并附上提问的帖子地址。谢谢。
PS:别问我V,我不懂,别问我函数,我不懂.那我懂什么?透视表和SQL懂一些皮毛.
重申:加好友加Q者,一律无视
在线时间213 小时经验363 威望0 性别保密最后登录注册时间阅读权限30UID912666积分363帖子精华0分享0
EH中级, 积分 363, 距离下一级还需 737 积分
积分排行3251帖子精华0微积分0
学习中,谢谢分享!@
在线时间175 小时经验11 威望0 性别男最后登录注册时间阅读权限10UID1915849积分11帖子精华0分享0
EH新人, 积分 11, 距离下一级还需 9 积分
积分排行3000+帖子精华0微积分0
wuxiang_123 发表于
一条记录只能有一个商品,如ID为4的记录,应该分拆为两条记录。香蕉一条,苹果一条。不然,在后期处理时,会 ...
感谢wu版的解答,最近一直在看wu版的仙侣帖,获益良多,发此贴时对SQL一窍不通,现在这个题我自己也能轻松做出来了,哈,题意没表达太清楚,以下为比较贴近我的需求的答案:
select * from 表X
where 姓名 in
(select 姓名
&&from&&(select distinct 姓名 from 表X where instr(购买物,'苹果')&0
& && &union all select distinct 姓名 from 表X where instr(购买物,'香蕉')&0)
&&group by 姓名
&&having count(*)=2
积分≥4700即可申请
关注我们,与您相约微信公众平台!
Copyright 1999 - 2017 Excel Home. All Rights Reserved.本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!
Powered by
本站特聘法律顾问:徐怀玉律师 李志群律师 &&create table a(
id VARCHAR(255) PRIMARY KEY,
name CHAR(50)
create table b(
id VARCHAR(255) referrence foreign key a(id),
name CHAR(50)
问:如何查询出表a中id列的值在表b中不存在的记录.
目前我能想到的方法是:
LEFT JOIN b
a.id = b.id
t._id IS NULL;
有没有人能想到更好一点的方法? 请指教! 另外,我用的数据库是DB2.
问题补充:kxys422834 写道你欺负人吧。还能简单?都用了左连了。
就是因为用了左连,感觉复杂了,像是在绕圈子,应该有更简单的办法的.
问题补充:gaojingsong 写道select *&&&
from a A&&&
where& a.id not in( select b.id& from b B&&& )
这种方法只有一个外键关联的时候可以,但是有多个列关联的时候好像就不能用了.
采纳的答案
where not exists ( select 1
where A.id = B.id);
效率应该比你的高
DB2差集运算:EXCEPT、EXCEPT ALL
-- 求差集:A减B
SELECT * FROM A -- 集合A
EXCEPT&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
SELECT * FROM B;-- 集合B
&&&&&&
select *&&&
from a A&&&
where& a.id not in( select b.id& from b B&&& )
你欺负人吧。还能简单?都用了左连了。
已解决问题
未解决问题SQL - 根据关联,用一个表的值修改另一个表对应字段的值 - David.Yun - 博客园
1 update tinfo2 set tinfo2.remark = tinfo1.remark
2 from tinfo1 inner join tinfo2 on tinfo1.name = tinfo2.name
&注释: 根据一个表字段的值修改另外一张表字段的值
初始状态下两张表的的数据: tinfo1,tinfo2
执行SQL语句后两张表的数据。使用SQL语句如何查询一个表中一个字段的值相同,另外一个字段的值不同?急!_百度知道
使用SQL语句如何查询一个表中一个字段的值相同,另外一个字段的值不同?急!
提问者采纳
) is not nullbegindrop table table1endgocreate table table1 (a int ,1 union select 1if
object_id('&gt.b) --记得及时采纳,b int)goinsert into table1select 1.a and a,2union select 1,1goSELECT a.b&b,3union select 2.a=b.* from table1 a where exists(select * from
table1table1&#39,今天任务还没完成
提问者评价
其他类似问题
sql语句的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁查看: 8871|回复: 3
阅读权限1UID532230函数0 关最后登录经验23 点在线时间1 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币48 个积分23精华0帖子日志注册时间
幼儿园小班, 积分 23, 距离下一级还需 77 积分
金币48 个积分23帖子
如上图,A列有很多单元格数值是1,想在C1单元格中显示A列中出现的第一个1的单元格对应的B列单元格内容, 例如,A列出现的第一个1是单元格A4,想在C1中显示B4的内容,能用函数实现吗? 期盼高手们的回复,谢谢!
阅读权限21UID261008函数0 关最后登录经验17481 点在线时间4968 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币2227 个积分17481精华0帖子日志注册时间
留连戏蝶时时舞
博士研究生, 积分 17481, 距离下一级还需 519 积分
金币2227 个积分17481帖子
看不到图,但猜一下vlookup(1,A:B,2,)复制代码
阅读权限23UID500646函数3 关最后登录经验29347 点在线时间1487 小时VBA0 关分享记录好友技巧0 关相册主题段位6 段金币15307 个积分29352精华0帖子日志注册时间
【字典201301班】C03
大学讲师, 积分 29352, 距离下一级还需 7648 积分
金币15307 个积分29352帖子
C1=INDEX(B:B,MATCH(1,A:A,))复制代码
阅读权限10UID523258函数0 关最后登录经验2159 点在线时间177 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币1918 个积分2164精华0帖子日志注册时间
初中1年级, 积分 2164, 距离下一级还需 336 积分
金币1918 个积分2164帖子
hrpotter 发表于
谢谢 ,同学。 又学会一个新公式
步步高打火机,哪里不会点哪里,学习so&&easy!
最佳答案累计大于100
最佳答案累计大于500
Powered by

我要回帖

更多关于 mysql查询字段不同值 的文章

 

随机推荐