[英]Comparing Non MySQL List/Array/Data With MySQL rows?
我正在開發一個iOS社交應用程序。 我目前正在建立“查找朋友”部分。
我有一個“用戶”表,它是這樣的:
-user_id -user_name ... -twitter_id -facebook_id -instagram_id
948913 yagiz 2134421 2132412 4314124312
現在,例如,當我嘗試尋找朋友時,應用程序會在后台執行此操作:
從選定的社交網絡應用程序(Twitter / Facebook / Instagram)獲取當前用戶的全部關注者列表。 響應是一個由用戶ID組成的簡單數組。
對於每個Twitter / Facebook / Instagram id,運行一個查詢,檢查它是否在應用程序數據庫中。
目前,這很好。 但是我有點認為這不是有效的方法。 因為如果用戶關注5K,則Twitter / Facebook / Instagram應用程序上的人員將運行5K查詢。
所以我想問比較非MySQL列表/數組/數據和MySQL行的最佳方法是什么?
您可以使用進行單個查詢
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用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.