Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL]Wyświetlanie wyników z bazy, Wyświetlanie wyników z bazy
Maze123987
post
Post #1





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 17.09.2009

Ostrzeżenie: (0%)
-----


Cześć,


  1. $result = mysql_query("SELECT abc,def FROM xyz");
  2.  
  3. $rows = array();
  4. while($r = mysql_fetch_array($result)) {
  5. $row[0] = $r[0];
  6. $row[1] = $r[1];
  7. array_push($rows,$row);
  8. }
  9.  
  10. print json_encode($rows, JSON_NUMERIC_CHECK);


To zwraca mi tablice w postaci:

  1. [["AAA",0],["AAA",111],["BBB",1233],["CCC",321]]


W jaki sposób poprawić powyższe zapytanie, aby w przypadku takich samych danych w kolumnie "abc", łączyło wyniki czyli powyższa tablica powinna wyglądać tak:

  1. [["AAA",111],["BBB",1233],["CCC",321]]


gdyż, dwa rekordy mają taką samą zawartość w kolumnie "abc".
Go to the top of the page
+Quote Post
tomxx
post
Post #2





Grupa: Zarejestrowani
Postów: 172
Pomógł: 27
Dołączył: 5.10.2013

Ostrzeżenie: (0%)
-----


Zrób SELECT DISTINCT abc

Tak w ogóle, to mysql_* jest już przestarzałe. Proponuję przejść na mysqli lub PDO.

Ten post edytował tomxx 14.06.2015, 18:14:53
Go to the top of the page
+Quote Post
Maze123987
post
Post #3





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 17.09.2009

Ostrzeżenie: (0%)
-----


No właśnie mi nie chodzi o samo pominięcie, a o łączenie rekordów, gdy w kolumnie abc jest taka sama wartość.

Nie chcę uzyskać rezultatu, gdzie
przy tablicy:
  1. [["AAA",5],["AAA",111],["BBB",1233],["CCC",321]]


wyświetli mi:
  1. ["AAA",111],["BBB",1233],["CCC",321]]


tylko zsumuje czyli:
  1. ["AAA",116],["BBB",1233],["CCC",321]]


@Edit:

Udało mi się - zrobiłem tak:

Kod
$result = mysql_query("SELECT abc, SUM(def) FROM xyz GROUP BY abc");


Ten post edytował Maze123987 14.06.2015, 18:33:25
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 13:21