第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

MYSQL - 如何使用 SELECT 作為我的 WHERE

MYSQL - 如何使用 SELECT 作為我的 WHERE

PHP
POPMUISE 2022-06-11 10:03:38
我有兩個(gè)表recordings,recording_metas我想選擇一些元數(shù)據(jù)并使用這些元數(shù)據(jù)中的外鍵來(lái)查找相應(yīng)的記錄。這就是我到目前為止所擁有的。$recording_sql輸出這個(gè)SELECT recording FROM recordings     INNER JOIN recording_metas     ON recordings.id = recording_metas.recording_id    WHERE recording_metas.recording_id IN (SELECT recording_id, meta_key, meta_value FROM recording_metas WHERE meta_key=? AND meta_value=?) LIMIT ?但是為什么我會(huì)收到以下錯(cuò)誤?Fatal error:  Uncaught Error: Call to a member function bind_param() on bool在這一行$stmt->bind_param(str_repeat('s', count($mixed)), ...$mixed);,我確信它$meta_sql可以工作,因?yàn)槲乙灿?LIMIT 指針單獨(dú)測(cè)試了它,所以如果我使用它們,指針工作正常$meta_sqlPHPfunction retrieveRecordingsByMetaData($connection, $config, $metas, $limit){    $where = "";    for ($i = 0; $i < count($metas); $i++) {        $where .= "meta_key=? AND meta_value=? AND ";    }    $where = preg_replace('/ AND $/', '', $where);    $meta_sql = "SELECT recording_id, meta_key, meta_value FROM $config->meta_table WHERE $where";    $recording_sql = "SELECT recording FROM $config->recording_table     INNER JOIN $config->meta_table     ON $config->recording_table.id = $config->meta_table.recording_id    WHERE $config->meta_table.recording_id IN ($meta_sql) LIMIT ?";    echo ($recording_sql);    $stmt = $connection->prepare($recording_sql);    $mixed = associativeToArrayMixed($metas);    array_push($mixed, $limit);    $stmt->bind_param(str_repeat('s', count($mixed)), ...$mixed);    if (!$stmt->execute()) {        echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error . " \r\n";        die();    }    $result = $stmt->get_result();    if ($result->num_rows > 0) {        while ($row = $result->fetch_assoc()) {            echo "recording found";        }    } else {        echo "0 results \r\n";    }}
查看完整描述

1 回答

?
婷婷同學(xué)_

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊

您必須在 where 子句中只選擇一列

WHERE recording_metas.recording_id IN 
  (SELECT recording_id FROM recording_metas WHERE meta_key=? AND meta_value=?) LIMIT ?

如果您想選擇多于一列,則必須使用此處所示的元組 https://stackoverflow.com/a/44706402/5193536


查看完整回答
反對(duì) 回復(fù) 2022-06-11
  • 1 回答
  • 0 關(guān)注
  • 246 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)