Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Pobranie danych dla dwóch wartości z kolumny
Forum PHP.pl > Forum > Przedszkole
Therminus
Jak napisać polecenie SELECT aby wyświetlić dane z tabeli 'TABELA1', kolumny 'kolumna1' dla wartości w kolumnie 'wartosc1' i 'wartosc2'?
Dla jednej wartości będzie to tak:
  1. SELECT * FROM `tabela1` WHERE `kolumna1` = 'wartosc1'

Ja potrzebuję w jednym poleceniu pobrać dane dla wartość1 i 'wartosc2'.
Wiem, że można, bo to kiedyś robiłem ale zapiski mi zaginęły.
nospor
SELECT * FROM `tabela1` WHERE `kolumna1` = 'wartosc1' OR `kolumna1` = 'wartosc2'
Lord
  1. SELECT * FROM `tabela1` WHERE `kolumna1` = 'wartosc1' AND `kolumna1` = 'wartosc2'

AND lub OR
nospor
@Lord a od kiedy jednka kolumna w jednym rekordzie moze miec jednoczesnie (AND) wartosc1 i wartosc2 ?
Lord
Cytat(nospor @ 8.08.2019, 13:08:00 ) *
@Lord a od kiedy jednka kolumna w jednym rekordzie moze miec jednoczesnie (AND) wartosc1 i wartosc2 ?

A wtedy kiedy wartosc1 = wartosc2

Nie poprawiałem Cię pisałem to w tym samym czasie co ty smile.gif
Masz racje AND jest bez sensu, ale bardziej myślałem o tym, że pytanie tyczy się łączenia warunków
nospor
`kolumna1` = 'wartosc1' AND `kolumna1` = 'wartosc2'
Wybacz, ale tekst 'wartosc1' i tekst 'wartosc2' Nigdy ni sa rowne wink.gif

Cytat
Nie poprawiałem Cię pisałem to w tym samym czasie co ty
Ja wiem, ze mnie nie poprawiales. Ja jedynie zwrocilem ci uwage na fakt, ze popelniles blad wink.gif
Therminus
Dziękuję, ale chyba mnie nie zrozumieliście o co mi chodzi. To co podaliście nie działa.
I z całą pewnością ta kwerenda inaczej wyglądała.
mam w `kolumna1`rekordy z pięcioma różnymi wartościami. Ja chcę pobrać dane z dwoma.
Dokładnie to tak kolumna ma nazwę `Miejscowosc`a ja potrzebuję zsumować inne kolumny dotyczące dwóch miejscowości.
nospor
Zrozumiec zrozumielismy dobrze. To ty zle wytlumaczyles o co ci chodzi oraz fakt, ze masz strutkure do dupy.

To teraz moze w koncu podasz DOKLADNiE co masz tej kolumnie, jakis przyklad?
Therminus
Cytat(nospor @ 12.08.2019, 11:57:24 ) *
Zrozumiec zrozumielismy dobrze. To ty zle wytlumaczyles o co ci chodzi oraz fakt, ze masz strutkure do dupy.

Faktycznie, mam strukturę do dupy, ale uznałem, że tak będzie prościej, zamiast tworzyć dodatkową tabelę i relacje. A mam tylko ok 160 rekordów.
Cytat(nospor @ 12.08.2019, 11:57:24 ) *
To teraz moze w koncu podasz DOKLADNiE co masz tej kolumnie, jakis przyklad?

W tej kolumnie mam 5 różnych miejscowości, a rekordów w tabeli jest 160 (tyle jest działek zabudowanych lub nie, na różnych ulicach). W innej kolumnie mam powierzchnię działek, którą muszę zsumować dla dwóch różnych miejscowości.
nospor
Czego nie rozumiesz w zdaniu:
Cytat
To teraz moze w koncu podasz DOKLADNiE co masz tej kolumnie, jakis przyklad?


?

Naprawde ciezko ci podac jakies przykladowe dane a nie opis tych danych? Przeciez musimy chociazby zobaczyc jak ten dane podzieliles w tej kolumnie....
Therminus
Już doszedłem.
  1. SELECT * FROM `dzialki` WHERE `Miejscowosc` IN ('Wałbrzych', 'Szczawno Zdrój')

nospor
Przeciez to dziala dokladnie tak samo jak to co ci podalem
`kolumna1` = 'wartosc1' OR `kolumna1` = 'wartosc2'

a co rzekomo ci nie dzialalo....
Therminus
Faktycznie działa. Ale poprawiałem potem "Metodę porównywania napisów", bo nie wszędzie była jednakowa. Chociaż sprawdzałem też z LIKE i wycinałem polskie znaki.
Teraz już nie dojdę co robiłem źle.
Dzięki.
Twój sposób jest lepszy, bo w moim nie działa LIKE (albo nie umiem zastosować).
nospor
Cytat
Twój sposób jest lepszy, bo w moim nie działa LIKE (albo nie umiem zastosować).
Tak, w IN nie da sie stosowac LIKE
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.