Difference between revisions of "VbzCart/procs/Upd Titles fr CatItems"

from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
< VbzCart‎ | procs
Jump to navigation Jump to search
(New page: ==About== * '''Purpose''': sets some fields in {{vbzcart|table|_titles}} after that has been filled in by {{vbzcart|proc|Upd_Titles_fr_Depts}} ==SQL== <section begin=sql /><mysql>CREATE PR...)
 
(added to db)
Line 1: Line 1:
 
==About==
 
==About==
* '''Purpose''': sets some fields in {{vbzcart|table|_titles}} after that has been filled in by {{vbzcart|proc|Upd_Titles_fr_Depts}}
+
* '''Action''': sets some fields in {{vbzcart|table|_titles}} after that has been filled in by {{vbzcart|proc|Upd_Titles_fr_Depts}}
 +
* '''Input''': {{vbzcart|table|cat_items}}
 +
* '''Output''': {{vbzcart|table|_titles}}: cntForSale, cntInPrint, qtyInStock
 +
* '''History''':
 +
** '''2010-11-10'''
 +
*** Added DROP PROCEDURE for easier maintenance.
 +
*** Added to database (procs did not get ported from L48 to Rizzo).
 
==SQL==
 
==SQL==
<section begin=sql /><mysql>CREATE PROCEDURE Upd_Titles_fr_CatItems()
+
<section begin=sql /><mysql>DROP PROCEDURE IF EXISTS Upd_Titles_fr_CatItems;
 +
CREATE PROCEDURE Upd_Titles_fr_CatItems()
 
     UPDATE _titles AS t LEFT JOIN (
 
     UPDATE _titles AS t LEFT JOIN (
 
       SELECT
 
       SELECT

Revision as of 12:36, 10 November 2010

About

  • Action: sets some fields in _titles after that has been filled in by Upd_Titles_fr_Depts
  • Input: cat_items
  • Output: _titles: cntForSale, cntInPrint, qtyInStock
  • History:
    • 2010-11-10
      • Added DROP PROCEDURE for easier maintenance.
      • Added to database (procs did not get ported from L48 to Rizzo).

SQL

<mysql>DROP PROCEDURE IF EXISTS Upd_Titles_fr_CatItems; CREATE PROCEDURE Upd_Titles_fr_CatItems()

   UPDATE _titles AS t LEFT JOIN (
     SELECT
       ID_Title,
       SUM(IF(i.isForSale,1,0)) AS cntForSale,
       SUM(IF(i.isInPrint,1,0)) AS cntInPrint,
       SUM(i.qtyInStock) AS qtyInStock,
       MIN(i.PriceSell) AS currMinSell,
       MAX(i.PriceSell) AS currMaxSell
      FROM cat_items AS i GROUP BY ID_Title
     ) AS ig ON ig.ID_Title=t.ID
     SET
       t.cntForSale = ig.cntForSale,
       t.cntInPrint = ig.cntInPrint,
       t.qtyInStock = ig.qtyInStock;</mysql>