使用取自另一个表的数组从一个表中SQL SELECT行


SQL SELECT rows from one table using an array taken from another table

我需要做这样的事情:

$user_id = (int) get_logged_in_userud();
**$thread_ids** = $wpdb->query( "SELECT thread_id FROM $tableName1 WHERE user_id = %s), $user_id);
$iterateRows = $wpdb->query( "SELECT thread_id FROM $tableName2 WHERE thread_id IN $s), **$thread_ids**);

我试图用这种方式获取它,但它在数组中返回一个数组,每一行都是关联数组。一旦我有了这些数据,我需要用while循环之类的东西迭代所有选定的行。

我第一次尝试自己做这件事,并想出了下面的代码。但它不是可用的格式。我需要在每一个项目中进行回显,如$row〔'col_name‘〕;对于每列。目标是列出与thread_id和user_id匹配的所有消息。

$grabThreadList = $wpdb->query( $wpdb->prepare("SELECT A.* FROM $recipientTableName WHERE A.thread_id IN (SELECT B.thread_id FROM $senderTableName WHERE B.thread_is = A.thread_id "));
    foreach ($grabThreadList as $key => $value){
    $implodeMe = implode(',,,few ', $value);
}

如果您正试图这样做,那么您可能只需要SQL就可以做到这一点:

SELECT thread_id FROM $tableName2 WHERE thread_id IN (SELECT thread_id FROM $tableName1 WHERE user_id = %s)