Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 3.588 pregleda

Najnovija ↓

izbacivanje slucajnih brojeva 10.02.2012. u 19:27 · pre 179 meseci #1
Ovako u mysql bazi imam unesene brojeve na slijedeci nacin:

ID Brojevi
1 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35
2 2.9.5.4.8.10.11.12.13.48.44.46.33.34.35.36.17.18.19.20.26.29.28.27.22.29.38.39.40.41.42.43.48.45.47


da ne brojite tu se nalazi 35 brojeva u jednom redu, e kako sad da mi u php-u, accessu, ili u nekom programu ko zna da iz ove baze svako 2 minute izvlaci 6 brojeva.

Unaprijed hvala
Re: izbacivanje slucajnih brojeva 13.02.2012. u 09:02 · pre 179 meseci #3
1) Normalizuj (da bude samo jedan broj po redu)

2) "SELECT id FROM imetabele ORDER BY RAND() LIMIT 6"
Potpis
"Common sense is not so common." - Voltaire
Re: izbacivanje slucajnih brojeva 13.02.2012. u 09:45 · pre 179 meseci #4
Citat:
Shinhan:2) "SELECT id FROM imetabele ORDER BY RAND() LIMIT 6"


Ako je iole veća tabela, ovo neće valjati. Uraditi rand nad celom tabelom da bi se uzelo prvih sest slogova nije zdravo.

Na stranu to da s obzirom na njegov model baze, to i ne može da se uradi tako. Kao što reše bogdan, neto je on tu gadno pogrešio u modeliranju.
Potpis
http://pedja.supurovic.net - http://wireless.uzice.net - Besplatni .RS domeni - Mikrotik uputstva - YT9TP - OpenStreetMap Srbija
Re: izbacivanje slucajnih brojeva 13.02.2012. u 12:50 · pre 179 meseci #6
Na primjer:

Code:

CREATE TABLE tvoja_tabela (
  id INT UNSIGNED NOT NULL ,
  PRIMARY KEY (id)
 ) ENGINE=InnoDB;
  
CREATE TABLE brojevi (
  id INT UNSIGNED NOT NULL AUTO_INCREMENT,
  id_tvoja_tabela INT UNSIGNED NOT NULL,
  broj INT UNSIGNED NOT NULL,
  PRIMARY KEY (id),
  KEY tvoja_tabela_fk (id_tvoja_tabela),
  CONSTRAINT tvoja_tabela_fk FOREIGN KEY (id_tvoja_tabela) REFERENCES tvoja_tabela (id) ON UPDATE CASCADE ON DELETE RESTRICT
 )ENGINE=InnoDB;

SELECT b.id_tvoja_tabela, b.broj
FROM tvoja_tabela t, brojevi b
WHERE t.id=b.id_tvoja_tabela
AND t.id=1
ORDER BY RAND() LIMIT 6;
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme