Portál AbcLinuxu, 31. října 2025 14:38
UPDATE Disks set ( SELECT PC_Hostname AS LastPlace, Time AS LastDate 
FROM Collections WHERE DiskID = Disk.ID ORDER BY Time DESC LIMIT 1 )Řešení dotazu:
 
UPDATE Disks  SET 
     LastPlace = ( 
          SELECT PC_Hostname FROM Collections 
               WHERE Collections.DiskID = Disks.ID ORDER BY Collections.Time DESC LIMIT 1 
     ), 
     LastDate = ( 
          SELECT Time FROM Collections 
              WHERE Collections.DiskID = Disks.ID ORDER BY Collections.Time DESC LIMIT 1 
     ) ;UPDATE Disks AS D
    JOIN (SELECT DiskID, LastPlace, max(Time) AS LastDate
        FROM Collections GROUP BY DiskID) AS C
    ON D.ID=C.DiskID
    SET D.LastPlace=C.LastPlace,
        D.LastDate=C.LastDate;
Bez záruky.
            
 
UPDATE Disks  SET 
   LastPlace = ( 
      SELECT PC_Hostname FROM Collections WHERE Collections.DiskID = Disks.ID ORDER BY Collections.Time DESC LIMIT 1 
   ), 
   LastDate = ( 
      SELECT Time FROM Collections WHERE Collections.DiskID = Disks.ID ORDER BY Collections.Time DESC LIMIT 1 
   ) ;
Dotay opravdu není rychlý, ale svoje udělá.
Možná by to šlo přes temporary table ... ale tuhle cestu namám prošlapanou, nebudu to už ani zkoušet .. asi.
             Díky moc, mám se co učit 
M.
Díky moc, mám se co učit 
M.
            
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                 
            
    
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.