Diskuze: Jak seřadit čísla v DB ?
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 13 zpráv z 13.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Tak si vyber ty čísla popořádku, ne?
SELECT cisla FROM tabulka ORDER BY cisla ASC
To mi ale údaje neseřadí ne ? Musím to mít v mysql jako int, nebo jako varchar ?
Na víc ASC by se měl přiřadit automaticky pakliže order by vynechám ne ? Což výsledně nesřadí. Jen vzestupně vypíše.
Nebo je nějaký mysql příkaz, který by mi to seřadil konstantně?
Tak co vlastně potřebuješ?? Ty tam dáváš čísla neuspořádaně (3, 6, 2, 1, 9, 5) a chceš je srovnat (1, 2, 3, 5, 6, 9)?? Pokud to je takhle, stačí dát sloupci v databázi typ int a klíč PRIMARY.
Omlouvám se za dost trapný dotaz...
Chyba byla jen v opomenutém dotazu... Ptal jsem se na id a nikoliv na sloupec
"cord" (souřadnice) takže po přepsání sloupečku to již funguje. Myslel
jsem, že tam mám cord.. Výsledně to řadilo podle ID a proto ASC neřešilo
problém logicky.
Někdy je lepší nemyslet
Děkuji.
Já vím, že jsi poslední dobou dost aktivní a snažíš se všem poradit, ale občas je lepší si informace ověřit než říkat něco, co je úplná hloupost
Poslední dobou se pohybuji spíš v pozadí. Odpovídám jen občas. Někdy mám hold hlavu plnou jiných věcí a myšlenky se lehce protnou.
Tak se podělím o tu práci, kterou jsem dělal když už. Jedná se o tvorbu mapy.
..Znám jednoduše kde se přesně číslo nachází, která je nad tím, pod tím atp. Vím jednoznačně že je tam les, cesta atp. Hlavně celkem rychle vím, co potřebuji editovat. A může to tvořit kdokoliv z týmu a přidávat jen texty atp.
(Tabování zde nešikovně funguje, takže jsem jen na rychlo upravil řádkování)
try{
echo "<table class='border'>";
$this->overeni = Databaze::dotaz("SELECT * FROM mapa_text WHERE cord order by cord DESC");
while ($this->data = $this->overeni->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT))
{
if($this->data['cord'] % 9 == 0)
{
echo "<tr>";
}
if($this->data['znak'] == 'c' OR $this->data['znak'] == 'l' OR $this->data['znak'] == 'ls')
{
if($this->data['znak'] == 'c')
{
echo "<td><font size='5' color='#FF8000'>". $this->data['cord'] ."</font></td>";
}
if($this->data['znak'] == 'l')
{
echo "<td><font size='5' color='#00AC28'>". $this->data['cord'] ."</font></td>";
}
if($this->data['znak'] == 'ls')
{
echo "<td><font size='5' color='#004D12'>". $this->data['cord'] ."</font></td>";
}
}
else
echo "<td>". $this->data['cord'] ."</td>";
}
echo "</table>";
} catch (PDOException $e){
echo "Něco se pokazilo, kontaktuj admina";
}
Zobrazeno 13 zpráv z 13.