Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Dodawnie z tablicy wartości
winiar789
post 7.09.2018, 08:07:33
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


Siemanko cześć - Dzień dobry smile.gif

Mam o to taki szybkie pytanko

Posiadam tablicę

  1.  
  2. [TwrKod] => 44444/BK/XS
  3. [Ilosc] => 1.0000
  4. [TwrKod] => 44444/BK/XS
  5. [Ilosc] => 3.0000
  6. [TwrKod] => 22222/CCC/XS
  7. [Ilosc] => 1.0000
  8. [TwrKod] =>111111/CCC/XS
  9. [Ilosc] => 3.0000
  10. [TwrKod] =>0000000/AA/XS
  11. [Ilosc] => 3.0000
  12. [TwrKod] =>0000000/AA/XS
  13. [Ilosc] => 3.0000
  14.  
  15.  



i finalnie potrzebuje to otrzymać :


  1.  
  2.  
  3. [TwrKod] => 44444/BK/XS
  4. [Ilosc] => 4.0000
  5. [TwrKod] => 22222/CCC/XS
  6. [Ilosc] => 1.0000
  7. [TwrKod] =>111111/CCC/XS
  8. [Ilosc] => 3.0000
  9. [TwrKod] =>0000000/AA/XS
  10. [Ilosc] => 6.0000
  11.  
  12.  
  13.  



Pozdro za odpowiedź i dobrego dnia exclamation.gif biggrin.gif
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 09:11:40
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Z racji ze niesamowicie zarabiscie opisales swoj problem oraz przedstawiles caly kontekst, otwieram moja szklana kule i:

- zakladam, ze to nie jest rzeczywista tablica bo nie ma zadnej racji bytu
- zakladam, ze pokazales kilka rekordow z bazy gdzie kazdy jest reprentowany przez tablice
- jesli powyzsze zalozenia sa dobre, to na etapie bazy robi sie takie sumowania.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 09:17:03
Post #3





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


Fakt mój opis może być słaby specool.gif

Więc daje obszerne dane biggrin.gif

  1.  
  2.  
  3. $rows2 = array();
  4. while($myRow2 = odbc_fetch_array($wynik2)){
  5.  
  6. $rows2[] = $myRow2;
  7.  
  8. }
  9.  
  10. echo "<pre>";
  11. print_R($rows2);
  12. echo "</pre>";
  13.  
  14. //WYNIK
  15.  
  16. (
  17. [0] => Array
  18. (
  19.  
  20. [TwrKod] => 44444/BK/XS
  21. [Ilosc] => 1.0000
  22. )
  23.  
  24. [1] => Array
  25. (
  26. [TwrKod] => 44444/BK/XS
  27. [Ilosc] => 3.0000
  28. )
  29. [2] => Array
  30. (
  31. [TwrKod] => 22222/CCC/XS
  32. [Ilosc] => 1.0000
  33. )
  34. [3] => Array
  35. (
  36. [TwrKod] =>111111/CCC/XS
  37. [Ilosc] => 3.0000
  38. )
  39. )
  40.  
  41. //Potrzebuje
  42.  
  43. (
  44. [TwrKod] => 44444/BK/XS
  45. [Ilosc] => 4.0000
  46. [TwrKod] => 22222/CCC/XS
  47. [Ilosc] => 1.0000
  48. [TwrKod] =>111111/CCC/XS
  49. [Ilosc] => 3.0000
  50.  
  51. )


TwrKod jeżeli jest taki sam w tablicy to sumuje ilość np mam 44444/BK/XS po 1 ilosci oraz 3 to wynikiem 44444/BK/XS ilosc 4

itd.

Ten post edytował winiar789 7.09.2018, 09:21:31
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 09:20:29
Post #4





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Z racji, ze moja szklana kula byla sprawna, odpowiedz dostales juz w moim pierwszy poscie


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 09:22:22
Post #5





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


heheheh smile.gif szklana kula sie nigdy nie myli ale ja potrzebuję przykładu na którym mogę bazować bo tak z opisu to nie wywnoskuje niczego
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 09:23:49
Post #6





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




jedna podstawowych funkcjonalnosc bazy/zapytan:
grupujesz po polu i robisz SUM

Z racji ze nie raczyles napisac jaka to baza wiec konkretnego przykladu ci nie dam


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 09:48:02
Post #7





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


Ooosz Ty smile.gif nie poddaje się - baza MSSQL połączenie przez OBDC

zayptanie i tak już jest łączone więc myślałem że w PHP połącze sobie to na luzie.

  1. $query2 = "SELECT * FROM TraNag T FULL OUTER JOIN TraElem P ON T.TrN_TrNID = P.TrE_TrNId WHERE T.TrN_NumerString='3333333333' AND T.TrN_DataDok >= '".$myDate."' AND T.TrN_DataDok <= '".$dzisiaj."' AND T.TrN_Bufor='1'";
  2.  
  3.  
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 09:50:30
Post #8





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




To ze uzywasz JOINow naprade nie przeszkadza by uzyc jeszcze GROUP BY i SUM - po to bazy danych maja te skladnie by moc latwo i szybko operowac na bazie a nie potem jeszcze w php obrabiac tak proste wyniki

Cytat
połączenie przez OBDC
No to akurat widzialem w kodzie tongue.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 10:15:34
Post #9





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


biggrin.gif ale uparcie nie chcesz podać mi przykładu zapytania wink.gif
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 10:19:34
Post #10





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




A ty uparcie nie chcesz zajrzec do manuala mimo ze podalem ci juz wszystko co masz znalezc smile.gif

ps: mssql wybrales sam z wlasnej woli w naplywie szalenstwa czy zmuszony do tego zostales w szkole/uczelni/pracy ?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 10:51:24
Post #11





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


Zmuszony w pracy - dane z jednego systemu trzeba wrzucać do drugiego a najlepiej to jakby wszystko już było obrobione idealnie pod klienta który sobie to życzy smile.gif


No i mam problem

Zapytanie

  1.  
  2. $query2 = "SELECT SUM(p.TrE_Ilosc) FROM TraNag t FULL OUTER JOIN TraElem p ON t.TrN_TrNID = p.TrE_TrNId WHERE t.TrN_NumerString='3333333333' AND t.TrN_DataDok >= '".$myDate."' AND t.TrN_DataDok <= '".$dzisiaj."' AND t.TrN_Bufor='1' GROUP BY p.TrE_TwrKod";
  3.  
  4.  


i teraz tak jak dodaje sobie SELECT p.TrE_TwrKod SUM(p.TrE_Ilosc) FROM
to mam błąd

a potrzbuje indeksy jak i ilości - jak dodaje SELECT * SUM(p.TrE_Ilosc) FROM
też nie chce zadziałać sad.gif

Ten post edytował winiar789 7.09.2018, 10:51:44
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 11:07:18
Post #12





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




oj, nadwyrezasz dzisiaj moja szklana kule... Magiczny proszek kosztuje niemalo...

A blad ktory dostajesz brzmi... ?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 11:11:33
Post #13





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


Na magiczny proszek zapraszam biggrin.gif biggrin.gif

SELECT p.TrE_TwrKod SUM(p.TrE_Ilosc) FROM

Incorrect syntax near 'p'., SQL state 37000 in SQLExecDirect

SELECT * SUM(p.TrE_Ilosc) FROM

Incorrect syntax near 'SUM'., SQL state 37000

Różnych opcji próbowałem

Ten post edytował winiar789 7.09.2018, 11:12:03
Go to the top of the page
+Quote Post
nospor
post 7.09.2018, 11:27:17
Post #14





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




SELECT p.TrE_TwrKod, SUM(p.TrE_Ilosc) FROM

Cytat
Na magiczny proszek zapraszam
Czyzby dzwoneczek byl twoim dystrybutorem? wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
winiar789
post 7.09.2018, 11:29:55
Post #15





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 15.11.2011

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


hehehehe dzwoneczek biggrin.gif ! działa
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 Wersja Lo-Fi Aktualny czas: 28.03.2024 - 18:08