2011-11-15 36 views
-1

我有一個具有IP地址和用戶名的表。 GUI已經被開發來選擇這些值。 IP地址是一個選擇字段,我們可以從中選擇多個IP地址,並且用戶名字段是一個下拉列表,我們只能從中選擇一個用戶名。用於選擇公用值的SQL查詢

該表格包含IP地址和用戶名的組合,但當用戶選擇多個IP地址時,用戶名下拉應該只填充所選多個IP地址中常見的用戶名。有沒有辦法爲它編寫SQL,或者我必須使用PL/SQL方法或編程方法。

PS:我使用的DB2數據庫

回答

0

這是你可以使用

SELECT t1.username 
FROM ip_table AS t1 
    JOIN ip_table AS t2 
    ON t1.`username` = t2.`username` 
AND t1.ip = <ip1> AND t2.ip = <ip2> ... etc 
0
select name, count(*) from users 
where ip in (?,?,?) 
group by name 
having count(*)=? 

注意必須動態生成此查詢...計數另一個查詢(*)值預計將匹配IN子句中的IP地址數量。