我遇到了一个问题,我在创建报告时需要显示有两个或更多银行账户的记录(我们的一些员工是国际性的,并且以多种货币获得报酬)。
我创建的报告会收回所有员工及其银行帐户信息。但是,我希望此报告仅 ,以便将拥有2个或更多银行帐户的员工带回来。
以下是一些测试数据:
正如您所看到的, Gareth 有多个银行帐户 - 我可以写什么过滤器来恢复他的记录?
答案 0 :(得分:0)
假设它是mysql,sqlite甚至postgresql(我认为)。它应该是
SELECT * FROM table_name WHERE "First Name" = "Gareth";
但是,如果您正在使用MySQL绑定excel,请确保" Gareth"列出他拥有的每个帐户。它可能看起来更干净,但SQL会解释下面的行#Gareth" as""。这样做也意味着你需要一个新的索引,"名字"不能设置为" UNIQUE"。在列中也有空格是非常难看的SQL语法最好使用camelCase或under_scores。
答案 1 :(得分:0)
假设select A.*
from A
where not exists (
select id
from B
where A.id=B.id and A.count <= B.count)
为表Person_Number
accounts
答案 2 :(得分:0)
如果您使用的是oracle,sqlserver ....
等数据库,请尝试此操作select b1.* from account_info_table b1 where exists (select 1 from account_info_table b2 where b1.first_name=b2.first_name group by b2.first_name having count(*)>2);
或
select * from account_info_table where first_name in (select first_name from account_info_table group by first_name having count(*)>2);
答案 3 :(得分:0)
Use This Code :
;WITH _CTE AS
(
SELECT *,ROW_NUMBER()OVER(PARTITION BY FirstName Order By FirstName)ROWNO FROM @Temp
)SELECT FirstName,BankAccountName,BankBranchName,BankAccountNo,SortCode FROM _CTE WHERE ROWNO > 1
答案 4 :(得分:0)
从empleados中选择Empleado 按Emppleado分组 计数(*)> 1