sql >> Database >  >> RDS >> Mysql

Vastgelopen bij het bouwen van MySQL-query

Voor alle kolommen in de rijen zou je een inner join kunnen gebruiken op subselect voor min biedprijs

select m.id, m.item_id, m.user_id, m.bid_price
from my_table m 
inner join ( 
select item_id, min(id) min_id,  min(bid_price) min_price
from my_table 
where   item_id IN (1,2,3)
group by item_id 
) t on t.item_id = m.item_id 
   and t.min_price= m.bid_price
   and t.min_id = m.id

of .. als je een float-gegevenstype hebt, kun je een acst gebruiken voor niet-ondertekend

  select m.id, m.item_id, m.user_id, cast(m.bid_price as UNSIGNED) 
  from my_table m 
  inner join ( 
  select item_id, min(id) min_id,  min(bid_price) min_price
  from my_table 
  where   item_id IN (1,2,3)
  group by item_id 
  ) t on t.item_id = m.item_id 
     and t.min_price= m.bid_price
     and t.min_id = m.id 


  1. Onjuiste syntaxis in de buurt van het trefwoord 'met'...vorige instructie moet worden afgesloten met een puntkomma

  2. Is er een equivalent voor @@error van SQL Server in MySQL?

  3. MET CONTROLE BEPERKING TOEVOEGEN gevolgd door CONSTRAINT CONTROLEREN vs. BEPERKING TOEVOEGEN

  4. Problemen met UnixODBC, FreeTDS en PyODBC