-2

Zend を使用してフィードからデータベースにデータを挿入しようとしています。また、テーブルに列 date_updated を追加して、フィード内の記事が更新されるたびに列も更新されるようにしています。しかし問題は、最初の記事が先に挿入され、その後に他の記事が挿入されることです。そのため、date_updated DESC に基づいて上位 10 の記事を選択しようとすると、最後に挿入された記事が一番上になり、ASC を使用すると古い記事が選択されます。どうすればよいか提案してください。私が書いているクエリは次のとおりです。

$sql = "INSERT INTO news_article
    (original_article_id, headline,summary, keywords, link, section, topic, date_published, date_updated, content, source_id)
    VALUES (?,?,?,?,?,?,?,?,?,?,?) 
    ON DUPLICATE KEY UPDATE 
        original_article_id = ?,
        headline = ?,
        summary = ?,
        keywords = ?,
        link = ?,
        section = ?,
        topic = ?,
        date_published = ?,
        date_updated = ?,
        content = ?,
        source_id = ?";
$values = array(
    "original_article_id"=>$id,
    "headline"=>$item->title,
    "summary"=>$summary,
    "keywords"=>$keywords,
    "link"=>$item->link,
    "section"=>"property",
    "topic"=>"property",
    "date_published"=>$formattedPubDate,
    "date_updated"=>$currentDate,
    "content"=>$data,
    "source_id"=>"3"
);  
$result = $db->query(
    $sql,
    array_merge(array_values($values), array_values($values))
); 

その後、私は使用しています

SELECT * FROM news_article ORDER BY date_updated DESC LIMIT 10
4

1 に答える 1