2016-11-07 109 views
0

請問,我必須執行檢查的用戶id列,但輸入可能會超過1快速SQL檢查複式記錄

條件

我要檢查是否有用戶id (輸入)是表格內的記錄之一或不是。

如果他們全部的表

SQL返回1

如果其中一人是不是

SQL返回0

我是一個新手,裏面什麼我能做的只是

SELECT count(1) from users_roles where userid = ? 

並在java編碼中使用FOR循環插入參數並重新運行此SQL。

是否有任何其他方法或方法我可以用更快的方式做到這一點?我在想如果輸入變得越來越多,可能需要很多資源來處理它。

我是SQL中的新手。 Sry回答愚蠢的問題。

+0

我刪除了不兼容的數據庫標記。 –

回答

0

我想你想是這樣的:

select case when count(*) = 3 then 1 else 0 end) as all_there 
from users_roles 
where userid in (?, ?, ?); 

3等於在in列表參數的數量。

+0

@Gordon_Linoff謝謝,哈哈,這是我想要的解決方案。非常感謝^ _ ^。它解決了所有問題。 hehehehe XD – SicaYoumi