RE: Need help with query
From: Alejandro Mesa (AlejandroMesa_at_discussions.microsoft.com)
Date: 10/11/04
- Next message: Sean: "How do I.."
- Previous message: David Gugick: "Re: Splitting date ranges"
- In reply to: DBA72: "Need help with query"
- Messages sorted by: [ date ] [ thread ]
Date: Mon, 11 Oct 2004 10:13:04 -0700
Try,
select
a.login
from
servers a
inner join
(
select distinct
serverName, dbName
from
servers
)s
on a.serverName = s.serverName and a.dbName = s.dbName
group by
a.login
having
count(*) <> (select count(*) from (select distinct serverName, dbName from
servers) as s1)
go
you should add DRI and constraints also.
Example:
CREATE TABLE Servers (
ServerName sysname NOT NULL,
DBName sysname NOT NULL,
Login sysname NOT NULL,
constraint pk_servers primary key nonclustered (ServerName, DBName, Login)
)
GO
AMB
"DBA72" wrote:
> I have a table containing listings of servers, databases, and users. Each
> server has the same databases but not all the same users exist in the same
> databases. I want to determine which users are not in all identical databases
> across the servers. Here is the table and data:
> IF OBJECT_ID('Servers') IS NOT NULL DROP TABLE Servers
> GO
> CREATE TABLE Servers (ServerName sysname NOT NULL, DBName sysname NOT NULL,
> Login sysname NOT NULL)
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB1','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB1','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB1','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB1','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB1','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB1','Login3')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB1','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB1','Login2')
> GO
> --
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB2','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB2','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB2','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB2','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB2','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB2','Login3')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB2','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB2','Login2')
> GO
> --
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB3','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server1','DB3','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB3','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server2','DB3','Login2')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB3','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server3','DB3','Login3')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB3','Login1')
> GO
> INSERT Servers (ServerName, DBName, Login)
> VALUES('Server4','DB3','Login2')
> GO
>
- Next message: Sean: "How do I.."
- Previous message: David Gugick: "Re: Splitting date ranges"
- In reply to: DBA72: "Need help with query"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|