Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Zapytanie pomijające duplikaty
dopal
post
Post #1





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 9.02.2009

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


Witam,

Założmy, że mam taką tabelę,która nazywa się produkty:

id |owoc |kraj |ilosc
1 banan BRA 2
2 banan KOL 3
3 gruszka POL 5
4 wiśnia RUS 4
5 kiwi AUS 3
6 arbuz POL 2
7 jabłko SLO 5
8 jabłko UKR 4
itd....

Chodzi mi jak powinno wyglądać zapytanie by otrzymać tylko te wyniki, które się nie powtarzają po kolumnie owoc
czyli tylko te:

id |owoc |kraj |ilosc
3 gruszka POL 5
4 wiśnia RUS 4
5 kiwi AUS 3
6 arbuz POL 2

Tylko te owoce, które występują raz w tej tabeli.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dopal
post
Post #2





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 9.02.2009

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


Ok, na teście działa, musze teraz to sprawdzić na prawdziwej bazie danych (IMG:style_emoticons/default/smile.gif)
Ale pewnie będzie ok
dzieki.

Niestety na prawdziwej tabeli nie chce to mi zadziałać.

Mam takie zapytanie:
  1. <?php
  2. $query="SELECT * FROM USPOJ
  3. WHERE UPSRPK='E022' AND UPUSDT Between '20120801' And '20120831' AND UPDNNR='12235350' OR
  4. UPSRPK='E022' AND UPUSDT Between '20120801' And '20120831' AND UPDNNR='12055525'
  5. GROUP BY UPDNNR HAVING COUNT(UPDNNR) = 1 ";
  6.  
  7. // jeśli pominę GROUP BY UPDNNR HAVING COUNT(UPDNNR) = 1 to otrzymuję te wyniki co trzeba, ale bez przefilrtowania ( 1 brałem też w cudzysłów )
  8. // czyli zapytanie i pozostała część kodu wykonują sie prawidłowo
  9.  
  10. $result = odbc_exec($connect, $query) or die( odbc_error());
  11.  
  12. $razem=odbc_num_rows($result);
  13.  
  14. $x=0;
  15.  
  16. {
  17.  
  18. while(odbc_fetch_row($result))
  19.  
  20. {
  21. $x++;
  22.  
  23. $a1 = odbc_result($result, 1);
  24. $a2 = odbc_result($result, 2);
  25. $a3 = odbc_result($result, 3);
  26. $a4 = odbc_result($result, 4);
  27. $a5 = odbc_result($result, 5);
  28. $a6 = odbc_result($result, 6);
  29. $a7 = odbc_result($result, 7);
  30. //dalsza część jest chyba bez znaczenia
  31. ?>


Przy takim zapytaniu otrzymuje komunikat:

Warning: odbc_exec() [function.odbc-exec]: SQL error: [IBM][Sterownik ODBC iSeries Access][DB2 UDB]SQL0122 - Niepoprawna kolumna UPPLNR lub wyra�enie na li�cie SELECT., SQL state S1000 in SQLExecDirect in D:\www\apache\htdocs\zest_magpoj.php on line 213
S1000

linia 213 to $result = odbc_exec($connect, $query) or die( odbc_error());

Ma ktoś jakieś rozwiązanie?

Ten post edytował dopal 13.12.2012, 13:05:57
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 10:08