1
我有这样的设置:寻找替代账户,SQL
Username | IP
Foo | 1.2.3.4
Bar | 1.2.3.4
Baz | 1.2.3.6
说我要找到用户“富”的替代账户。这样的事情应该返回:
Username | IP
Bar | 1.2.3.4
我该如何在一个SQL查询中做这样的事情?
我有这样的设置:寻找替代账户,SQL
Username | IP
Foo | 1.2.3.4
Bar | 1.2.3.4
Baz | 1.2.3.6
说我要找到用户“富”的替代账户。这样的事情应该返回:
Username | IP
Bar | 1.2.3.4
我该如何在一个SQL查询中做这样的事情?
自加入应该做的伎俩
这会给你有一个以上的
Select * from
Table t1
INNER JOIN Table t2
ON t1.ip = t2.ip
and t1.Username <> t2.Username
你可以调整所有的用户,你会想
例如
Where
t1.UserName = 'Foo'
SELECT * FROM TableName
LEFT JOIN TableName AS TableName2
ON TableName2.IP = TableName.IP AND TableName2.Username != TableName.Username
WHERE TableName.Username = 'Foo'
我打字相同的代码时,都得到了答案贴... – 2010-09-20 21:43:48
SELECT * FROM用户LEFT JOIN用户以Users2 ON Users2.ip = Users.ip AND Users2.user!= Users.user WHERE Users.user =“Foo”//工作不正常,我做错了什么? – Q2Ftb3k 2010-09-20 21:49:04
最后使用单个=而不是双倍。我更新了我的答案。 – JamesMLV 2010-09-20 21:58:30