0

1つのクエリを取得し、それに複数のselectステートメントを適用しようとしています。私が持っている例は...

$news_query="SELECT *, DATE_FORMAT(`date`,'%d-%b-%Y') AS showdate, SUBSTRING_INDEX(body,' ',8) as body FROM NewsContent ORDER BY id DESC LIMIT 3";

これは、クエリを取得し、日付形式を2012-09-15から2012年9月15日に変更し、テキスト本文の単語数を制限して、最後の3つが表示されるようにテーブル内の項目を並べ替えます。

順序は機能しますが、日付の変更と単語の制限は機能しません。これらのステートメントを適用できるようにするために私が何をするつもりかを誰かが説明できますか?誰かが「showdate」がどこに行くべきかを私が理解するのを手伝ってもらえますか?以前の「$date」文字列を置き換えますか、それとも他の場所に適用されますか?

4

1 に答える 1

1

*はテーブルからすべての列を選択するため、テーブルから本文を選択し、短縮された本文も選択したことに注意してください。MySQLがそれでどのように動作するかはよくわかりません。新しいバージョンのbodyに別の名前を付けても、問題はありません。選択した新しい日付と新しい本文は、以前のものを置き換えることはありませんが、出力に別々の列として表示されます(showdateという名前と、呼び出される本文を変更したものの下にあります)。

于 2012-09-16T20:19:33.217 に答える