Witam
Napotkałem dziś dziwny problem którgo nie mogę obejść , mianowicie stworzyłem pytanie do SQL które wygląda tak :

SET @nr:=0 , @cat = 0 ;

  1. SELECT @cat:=c.id AS id , c.name
  2. (
  3. SELECT CEIL(AVG(pos)) FROM
  4. (
  5. SELECT @nr:=@nr+1 AS pos,cp.category,op.id_dealer
  6. FROM oferta op
  7. LEFT JOIN component cp ON cp.id = op.id_component
  8. WHERE cp.department = 6 AND cp.category = @cat <--
  9. ORDER BY op.price
  10. ) cat WHERE cat.category = @cat AND cat.id_dealer = 549
  11. ) AS position
  12. FROM category c
  13. WHERE c.GROUP = 6


zmienna @cat którą wspazałem strzałką wygląda tak jak by przyjmowała wartość NULL ,przez co nie mogę wyciągnąć pozycji dla ofert w danej katerogi przynależącej do działu , jeśli zamiast tej zmiennej umieszczę wartość id kategori która jest w departamencie (np 6) ,zapytanie prawidłowo wyciąga mi potrzebne dane (ale tylko dla kategori o id jakie wpisałem zamiast zmiennej cat)

co jest powodem że nie mogę przepisać zmiennej ?

może jest inny sposób na wykorzystanie kolumny c.id w podzapytaniu ?