Skocz do zawartości


Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

[ROZWIĄZANE] Zapytanie zwracające jeden rekord/wynik

MySQL

  • Zamknięty Temat jest zamknięty
7 odpowiedzi w tym temacie

#1 sebul

    Godlike

  • Przyjaciel

  • Reputacja: 2 035
    Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 29.10.2011 03:09

Załóżmy, że mam bazę danych, a w niej jest 5 różnych wyrazów, które powtarzają się 5 razy. Jak powinno wyglądać zapytanie, aby wyrazy te, zostały zwrócone po jednym razie?
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#2 Gh0st

    :)

  • Power User

  • Reputacja: 852
    Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 29.10.2011 06:24

Nie wiem czy o to ci chodziło ale poniższe zapytanie wybierze kolumna='wartosc' i zatrzyma po znalezieniu jednego wyniku. Czyli zwróci 1.
LIMIT 0, 1
Można też użyć segregacji ale jej w poniższym zapytaniu nie użyje
order by `kolumna` DESC
DESC - 9-1
ASC - 1-9
Myślę że zrozumiałeś oco chodzi z tą segregacją.

a tutaj zapytanie
SELECT * FROM `tabela` where `kolumna`='szukana_fraza' LIMIT 0, 1

  • +
  • -
  • 0

#3 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

  • Reputacja: 2 035
    Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 29.10.2011 09:11

No akurat nie o to mi chodzi, bo to zwróci tylko 1 wyraz, a nie każdy po jednym razie.
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#4 Gh0st

    :)

  • Power User

  • Reputacja: 852
    Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 29.10.2011 09:19

no to :

$sql = "SELECT * from `tabela` where `kolumna`='wartosc'";
$query = mysql_query($sql);
while($wy = mysql_fetch_array($query)){
echo $wy['kolumna'];
}

Będzie pobierało dane dotąd aż kolumna !== wartosc

Użytkownik Gh0st edytował ten post 29.10.2011 09:20

  • +
  • -
  • 0

#5 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

  • Reputacja: 2 035
    Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 29.10.2011 10:01

Ale z tego co wiem, te zapytanie wywoła 5 razy dany wyraz z tabeli, a mi chodzi o to, żeby z jakiejś tam tabeli, w której jest pięć wyrazów napisanych po 5 razy (czyli łącznie mamy 25 wyrazów) zwróciło jeden wyraz tylko 1 raz.

W sumie to można to napisać jeszcze inaczej, po prostu jest pięć takich samych wyrazów w tabeli i jak powinno wyglądać zapytanie, które zwrócić tylko jeden wyraz? Choć tutaj można by użyć "LIMIT"... No już łatwiej jak na początku, tego raczej nie wytłumaczę.

$sql = mysql_query("SELECT `nick` FROM `$dbtable` WHERE `klasa`='1'");
Tak wygląda dotychczasowe zapytanie, ale zrobiłem coś takiego, że nie przy każdym nicku jest klasa 1, więc jak mogę osiągnąć to samo zmieniają zapytanie?

Użytkownik sebul edytował ten post 29.10.2011 10:05

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#6 R3X

    Godlike

  • Przyjaciel

  • Reputacja: 2 987
    Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 29.10.2011 14:09

DISTINCT
$sql = mysql_query("SELECT DISTINCT `nick` FROM `$dbtable` WHERE `klasa`='1'");

  • +
  • -
  • 1

#7 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

  • Reputacja: 2 035
    Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 29.10.2011 14:19

Dałem
$sql = mysql_query("SELECT DISTINCT `nick` FROM `$dbtable`");

Można zamknąć.
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#8 Onyke

    Godlike

  • Przyjaciel

  • Reputacja: 708
    Guru

  • Postów:2 178
Offline

Napisano 29.10.2011 14:35

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0




  


Użytkownicy przeglądający ten temat: 1

0 użytkowników, 1 gości, 0 anonimowych

Coinsy CSGOPolygon Za SMS, PSC , Przelew - CoinSell.pro
Skiny do CS:GO za SMS, PSC, Przelew - CSGOPaka.com
Automatyczny Bot Levelowania Steam - LVLUPSteam.com
CSGO Gambling Sites and Free Betting Codes - DreamCodes.gg

Logowanie


  • Potrzebujesz konta? Zarejestruj się!