webForumDet fria alternativet

Lista de senaste trådarna - men inte flyttade!

Databaser & SQL

1 svar · 175 visningar · startad av Chavez

Medlem sedan maj 20001 953 inlägg
Frågan#1

Skulle ordna det med visning av de senaste trådarna i ett forum. Nu duger mina SQL-kunskaper som vanligt inte riktigt till.

Skall alltså plocka ut de senaste X trådarna ur en tabell som ser ut såhär:

CREATE TABLE phpbb_topics (
  topic_id mediumint(8) unsigned NOT NULL auto_increment,
  forum_id smallint(8) unsigned NOT NULL default '0',
  topic_title char(60) NOT NULL default '',
  topic_poster mediumint(8) NOT NULL default '0',
  topic_time int(11) NOT NULL default '0',
  topic_views mediumint(8) unsigned NOT NULL default '0',
  topic_replies mediumint(8) unsigned NOT NULL default '0',
  topic_status tinyint(3) NOT NULL default '0',
  topic_vote tinyint(1) NOT NULL default '0',
  topic_type tinyint(3) NOT NULL default '0',
  topic_last_post_id mediumint(8) unsigned NOT NULL default '0',
  topic_moved_id mediumint(8) unsigned NOT NULL default '0',
  topic_first_post_id mediumint(8) unsigned NOT NULL default '0',
  PRIMARY KEY  (topic_id),
  KEY forum_id (forum_id),
  KEY topic_moved_id (topic_moved_id),
  KEY topic_status (topic_status),
  KEY topic_first_post_id (topic_first_post_id)
) TYPE=MyISAM;

Visst, enkelt. Men när man flyttar en tråd så skapas en till post i tabellen. Då listas alltså samma tråd två gånger vilket inte riktigt är meningen. Då finns fältet topic_status. Det är satt till två på den tråden som skall visas (den som skapades när man flyttade) och 0 på den ursprungliga tråden som inte skall listas.

Så om två trådar har exakt samma timestamp (topic_time) skall den post som har topic_status=2 väljas och den med topic_status=0 skall inte tas upp i resultatet.

Någon som kan hjälpa till här?

Medlem sedan dec. 1999483 inlägg
#2

Funkar "GROUP BY topic_time ORDER BY topic_status DESC" tro??

259 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)