sql语句(其他论坛没有回答出来的问题)

时间:2022-03-10 13:35:30
access库中有“男孩”“女孩”“男”“女”“双职工”,类型分别为“整数”“整数”“字符”“字符”“逻辑”;其中“男(女)”代表职工性别,“男(女)孩”代表该职工的男(女)孩数量,
(1)请问我该如何取的正确的男(女)孩总数,请注意双职工时的取值。
(2)怎样取得所有员工(除去既是“双职工”同时又是“女”)的员工名单。

9 个解决方案

#1


1.sql="select count(*) from table where 男='1'"
2.sql="select * from table where 双职工=ture and 女='1'"

你这个数据库设计得不合理!

#2


1.sql="select count(*) from table where 男='1' or 双职工='f'"





#3


你的表的结构有缺陷

#4


表结构是有问题,不过这个查询很有意思:
1.sql="select sum(男孩) as 男孩总数,sum(女孩) as 女孩总数 from table where 男='1' OR (女='1' AND 双职工=false)"
2.sql="select * from table where 双职工=false or 女='0'"

#5


都说有问题,请明确问题!

#6


其中“男(女)”代表职工性别  , 而你的表是 “男”“女”“字符”“字符”,你为什么不用“性别”  “逻辑型”呢?

#7


sorry ,是我弄错了,本来的数据库结构为:“男孩”“女孩”“性别”“双职工”,类型分别为“整数”“整数”“男/女”“逻辑”;其中性别代表职工性别,“男(女)孩”代表该职工的男(女)孩数量,

#8


你的数据库设计一点都不合理
还是设计好你的数据库吧!

#9


Yang兄的想法正确,这两个问题可以合成一个问题就是找出公司员工的家庭数,两个双职工只能算一个家庭。所以sql语句的写法就是先找出所有男员工,其中包括单职工和双职工,而一个双职工男员工肯定对应一个双职工女员工,所以双职工女员工就不用再统计,但单职工女员工也要进行统计,所以最后的统计方法就是所有男员工和单职工女员工,当然也可以统计所有女员工和单职工男员工。

#1


1.sql="select count(*) from table where 男='1'"
2.sql="select * from table where 双职工=ture and 女='1'"

你这个数据库设计得不合理!

#2


1.sql="select count(*) from table where 男='1' or 双职工='f'"





#3


你的表的结构有缺陷

#4


表结构是有问题,不过这个查询很有意思:
1.sql="select sum(男孩) as 男孩总数,sum(女孩) as 女孩总数 from table where 男='1' OR (女='1' AND 双职工=false)"
2.sql="select * from table where 双职工=false or 女='0'"

#5


都说有问题,请明确问题!

#6


其中“男(女)”代表职工性别  , 而你的表是 “男”“女”“字符”“字符”,你为什么不用“性别”  “逻辑型”呢?

#7


sorry ,是我弄错了,本来的数据库结构为:“男孩”“女孩”“性别”“双职工”,类型分别为“整数”“整数”“男/女”“逻辑”;其中性别代表职工性别,“男(女)孩”代表该职工的男(女)孩数量,

#8


你的数据库设计一点都不合理
还是设计好你的数据库吧!

#9


Yang兄的想法正确,这两个问题可以合成一个问题就是找出公司员工的家庭数,两个双职工只能算一个家庭。所以sql语句的写法就是先找出所有男员工,其中包括单职工和双职工,而一个双职工男员工肯定对应一个双职工女员工,所以双职工女员工就不用再统计,但单职工女员工也要进行统计,所以最后的统计方法就是所有男员工和单职工女员工,当然也可以统计所有女员工和单职工男员工。