2013-04-14 77 views
0

我正在開發iOS社交網絡應用程序。我目前正在建立「尋找朋友」部分。使用MySQL行比較非MySQL列表/數組/數據?

我有一個「用戶」表,該表是這樣的:

-user_id -user_name ... -twitter_id -facebook_id -instagram_id 
948913 yagiz   2134421  2132412  4314124312 

現在,比如當我試圖找到朋友,應用程序做此背景:

  • 獲取所選社交網絡應用程序(Twitter/Facebook/Instagram)中當前用戶的全部關注列表。響應是一個由用戶ID組成的簡單數組。

  • 對於每個微博/ Facebook的/ Instagram的ID運行檢查,如果它是在應用程序 數據庫的查詢。

目前這個效果很好。但我有點認爲這不是有效的。因爲如果用戶在Twitter/Facebook/Instagram應用上運行5K查詢時關注5K人。

所以我問是哪種方法比較非MySQL列表/數組/數據與MySQL行的最佳方式?

回答

0

您可以執行使用

WHERE ... IN('1', '2') 

如果你有一組ID一個查詢,你可以做這樣的:

$twitterIds = array(
    1234, 
    1235, 
    1236 
); 

// $twitterIdString = '1234','1235','1236' 
$twitterIdString = "'" . implode("','", $twitterIds) . "'"; 

// $queryStub = WHERE `-twitter_id` IN('1234','1235','1236') 
$queryStub = "WHERE `-twitter_id` IN(" . $twitterIdString . ")"; 

這將只返回了Twitter用戶在你的數據庫中。

+0

這就是我正在尋找的!謝謝! –