Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP/MySQL] Select nie widzi aliasu
ZeT
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.10.2002

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


Problem jest następujący mamy zapytanie np:
  1. SELECT * , (SELECT COUNT( * ) FROM xxxxx WHERE cc = 'be' AND ( bbb = k.b_id OR bbb2 = k.b_id OR bbb3 = k.b_id OR bbb4 LIKE '%k.b_id ,%')) FROM kat AS k


SQL zwraca jakieś wyniki, ale nie bierze pod uwagę tego:
  1. OR bbb4 LIKE '%k.b_id ,%'


gdyż jak wpisze np:
  1. OR bbb4 LIKE '%50 ,%'


to zwraca wyniki poprawnie, pytanie dlaczego LIKE nie widzi aliasu k.b_id?
Go to the top of the page
+Quote Post
.chudy.
post
Post #2





Grupa: Zarejestrowani
Postów: 70
Pomógł: 3
Dołączył: 15.06.2003
Skąd: kosmosu?

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


W zlym miejscu masz AS, pytanie powinno być na wzór:
  1. SELECT *, (SELECT 'cos' FROM 'tablela_2' WHERE id > 10) AS k, FROM tabela_1
Go to the top of the page
+Quote Post
nevt
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


w tym zapisie
  1. ... OR bbb4 LIKE '%k.b_id ,%' ...
k.b_id to nie nazwa pola w bazie, tylko zwykły tekst we wzorcu dla LIKE ... spróbuj:
  1. ... OR bbb4 LIKE CONCAT('%', k.b_id, ' ,%') ...
i powinno być ok...

Ten post edytował nevt 1.04.2008, 19:08:37
Go to the top of the page
+Quote Post
ZeT
post
Post #4





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.10.2002

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


wiedziałem że rozwiązanie jest proste, ale wczoraj po tylu godzinach mnie przerosło (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) wielkie dzięki nevt
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: 22.08.2025 - 17:28