Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][SQL]Problem z aliasem utworzonej kolumny
adgad
post
Post #1





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 14.04.2010

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


Witam,
mam problem z zapytaniem w sql-u. Mianowicie wygląda ono tak:
  1. SELECT users.*, SUM(CASE WHEN c.id IS NULL THEN ...END) isComment
  2. FROM (users)
  3. LEFT JOIN comments ON users.id = comments.user_id
  4. WHERE `isComment` = 0
  5. GROUP BY users.id

to przykład zapytania wymyślony na szybko. Problem polega na tym że w zależności czy tworzona kolumna jest 1 czy zero musze ustawić warunek. Robię to w php, na wzór:
  1. if($where['comments']==1)
  2. $this->db->where('isComment >0')
  3. if($where['comments']==0)
  4. $this->db->where('isComment =0')

Problem w tym że mam błąd:
  1. Unknown COLUMN 'isComment' IN 'where clause'

pytanie zatem jak odwołać się do tej kolumny?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Thorang Hoog
post
Post #2





Grupa: Zarejestrowani
Postów: 41
Pomógł: 9
Dołączył: 8.02.2009

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


Wszystkie informacje jakie znalazłem potwierdzają, że w WHERE nie można używać aliasów

  1. mysql> SELECT klijent_id FROM klijenci WHERE klijent_id = 1;
  2. +------------+
  3. | klijent_id |
  4. +------------+
  5. | 1 |
  6. +------------+
  7. 1 row IN SET (0.00 sec)
  8.  
  9. mysql> SELECT klijent_id AS id FROM klijenci WHERE id = 1;
  10. ERROR 1054 (42S22): Unknown COLUMN 'id' IN 'where clause'
  11. mysql>


MySQL 5.5.16
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: 7.10.2025 - 14:50