Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] zapytanie
gino
post
Post #1





Grupa: Zarejestrowani
Postów: 324
Pomógł: 52
Dołączył: 18.02.2008

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


Witam,

2 pytania: czy da się zapytaniem zmienić wartośc pola na jakis tekst ? Przykład: jest pole status w tabeli1 i przyjmuje warość 0 lub 1. W zapytaniu chcę otrzymać: jeżli stasus 0 to tekst "dodaj' jeśli wartośc 1 to tekst 'spadaj' ('dodaj' i 'spadaj' to przykłady)

I drugie pytanie: tabela1 o polach id, nazwa, tabeli2 o polach id_1, id_1 które są powiązane z id z tabeli1. Trzeba zapytaniem otrzymać 2 nazwy dla tych identyfikatorów (id_1 i id_2) z tabeli1. Temporary table troche mało eleganckie.

Dzięki z góry

gino
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




1) Możesz to bez problemu zrobić w php, nie wiem po co ci to w mysql... No ale skoro chcesz w mysql to
IF - zobacz w manuala jak nie wiesz jak używać

2) zwykły LEFT JOIN

ps: skoro chodzi ci o mysql to czemu nie zakładasz tego w dziale mysql....? przenosze
Go to the top of the page
+Quote Post
gino
post
Post #3





Grupa: Zarejestrowani
Postów: 324
Pomógł: 52
Dołączył: 18.02.2008

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


Witaj,

sorki za niedopatrzenie gdzie ląduje temat.

1. Jakbym mógł w php to nie byłoby pytania. Trzbea w mysql-u. Wiem jak działa IF ale coś u mnie nie działa. Zerknę dokładniej

2. LEFT JOIN zwróci wtedy 2 rekordy, a potrzeba jeden rekord. Chyba, że spaprałem zapytanie (IMG:style_emoticons/default/wstydnis.gif)

pozdrawiam

gino
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ad1) No to pokaż jak kombinujesz
ad2) Left join zwroci jeden rekord. Tak, spaprałeś sprawę. Pokaz jak bardzo (IMG:style_emoticons/default/smile.gif)

ps:
ad2) Ale masz zrobic dwa left join, jeśli chcesz pobrać dane o dwóch ID
Go to the top of the page
+Quote Post
gino
post
Post #5





Grupa: Zarejestrowani
Postów: 324
Pomógł: 52
Dołączył: 18.02.2008

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


Witam,

wszystko chodzi. W IF faktycznie zamieszałem, a zapytanie skonstruowałem tak:

  1. SELECT
  2. `tabel2`.`id`,
  3. `table2`.`status`,
  4. `tabel2`.`czas`,
  5. `WW`.`name` AS `name_1`,
  6. `KK`.`name` AS `name_2`
  7. FROM `table2` LEFT JOIN `table1` AS WW ON (`WW`.`id` = `table1`.`id_1`) LEFT JOIN `table1` AS KK ON (`KK`.`id` = `table2`.`id_2`)


Go to the top of the page
+Quote Post

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: 23.08.2025 - 11:00