Dobra zmieniłem to trochę. Dodałem do bazy danych kolumnę z DATETIME
Mam teraz takie zapytanie
$dzienwczorajszy = date('Y-m-d 20:00:00.000000', strtotime("-1 day")); $koniecdt = date("Y-m-d 07:00:00.000000"); $result = $mysqli->query("
SELECT CONCAT('Darłowo'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=1
UNION
SELECT CONCAT('Świnoujście'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=2
UNION
SELECT CONCAT('Gorzów Wielkopolski'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=3
UNION
SELECT CONCAT('Kołobrzeg'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=4
UNION
SELECT CONCAT('Koszalin'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=6
UNION
SELECT CONCAT('Trzebież'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=8
UNION
SELECT CONCAT('Resko'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=9
UNION
SELECT CONCAT('Miastko'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=12
UNION
SELECT CONCAT('Szczecinek'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=15
UNION
SELECT CONCAT('Wierzchowo'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=17
UNION
SELECT CONCAT('Szczecin'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=19
UNION
SELECT CONCAT('Trzcińsko'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=21
UNION
SELECT CONCAT('Przelewice'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=22
UNION
SELECT CONCAT('Piła'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=23
UNION
SELECT CONCAT('Krzyż'), MIN(wiatrmax) AS min, godzina FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' AND id_miasto=24
ORDER BY min DESC LIMIT 15");
Powinno pokazać rekodry z przedziału od wczorajszego dnia od godziny 20:00 do dzisiejszego dnia do godziny 07:00 ale pojawiają się tylko rekordy z godziny 20:00
Jak daję takie zapytanie
$dzienwczorajszy = date('Y-m-d 20:00:00.000000', strtotime("-1 day")); $koniecdt = date("Y-m-d 07:00:00.000000"); $result = $mysqli->query("
SELECT * FROM dane WHERE dataczas BETWEEN '".$dzienwczorajszy."' AND '".$koniecdt."' ORDER BY dane.wiatrmax DESC ORDER BY min DESC LIMIT 15");
To pojawiają się rekordy wyznaczone ale powtarza się id_miasto.
Jak mogę wykluczyć powtarzanie się tych samych id_miasto?