Autor Zpráva
juraj
Profil
Zdravím

ako vypísať týždňové údaje,keď sa tabuľka volá napr.user a do stĺpca sa zapisuje dátum v tvare 2015-07-15,2015-07-16...
A chcem vybrať dáta v týždňovovom rozsahe,aby výstup vypadal napr.

2015-07-13
2015-07-14
2015-07-15
2015-07-16
2015-07-17
2015-07-18
2015-07-19

viem ,že sa používa príkaz select * from user where .....
neviem aká má bzť podmienka za where

ďakujem
lionel messi
Profil
juraj:
SELECT * FROM tabulka WHERE datum >= 2015-07-13 AND <= 2015-07-19
juriad
Profil
juraj:
Jestli máš ve sloupci čárkou oddělené hodnoty, máš sakra problém. V takovém případě řešení existuje, ale bude ukrutně pomalé (a neprozradím jej). Správně je mít v další tabulku, která bude obsahovat jeden řádek pro každý datum a SELECT následně bude provádět JOIN.

lionel messi:
Skoro, jen jsi zapomněl na to, že datumový literál je ve skutečnosti řetězec, a musí tedy být obalený apostrofy.
juraj
Profil
lionel messi:
a keby som chcel,aby sa tam dátumy ručne nevpisovali,
ale automaticky vypisovali údaje každý nový týždeň?
juriad
Profil
juraj:
Viz stackoverflow.com/a/20120711/4052811 - použij porovnání výstupů funkce yearweek.
juraj
Profil
juriad:
a teraz mám problém ako spočítať napr jednotlivé kusy k dátumom?


           $sqlgg=sprintf("SELECT  datum,kus   from neregistrovanynavstevnikzit where YEARWEEK(datum)=YEARWEEK(NOW()) group by datum"); 
$resultgg = mysql_query($sqlgg);
 $countg=mysql_num_rows($resultgg);
while(list($datum,$kus) = @mysql_fetch_row($resultgg)){

 //pocita kusz na den
 $sql2pgnH=(" SELECT DISTINCT kus FROM neregistrovanynavstevnikzit  where kus='$kus' YEARWEEK(datum)=YEARWEEK(NOW()) ");                              
$result2pnH=mysql_query($sql2pgnH);
 $spolunH=mysql_num_rows($result2pnH);
  echo $totalj += $spolunH;//spolu ya den
  echo $totalj;echo $datum;

}

a výstup by som chcel asi takto
kusy - datum
20 2015-07-13
2 2015-07-14
3 2015-07-15
4 2015-07-16
5 2015-07-17
juraj
Profil
už vyriešené
dakujem

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0