mirror of
				https://github.com/grocy/grocy.git
				synced 2025-10-31 10:46:36 +00:00 
			
		
		
		
	
		
			
	
	
		
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			MySQL
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			MySQL
		
	
	
	
	
	
|   | CREATE VIEW meal_plan_internal_recipe_relation
 | ||
|  | AS
 | ||
|  | 
 | ||
|  | -- Relation between a meal plan (day) and the corresponding internal recipe(s)
 | ||
|  | 
 | ||
|  | SELECT mp.day, r.id AS recipe_id
 | ||
|  | FROM meal_plan mp
 | ||
|  | JOIN recipes r
 | ||
|  | 	ON r.name = CAST(mp.day AS TEXT)
 | ||
|  | 	AND r.type = 'mealplan-day'
 | ||
|  | 
 | ||
|  | UNION
 | ||
|  | 
 | ||
|  | SELECT mp.day, r.id AS recipe_id
 | ||
|  | FROM meal_plan mp
 | ||
|  | JOIN recipes r
 | ||
|  | 	ON r.name = STRFTIME('%Y-%W', mp.day)
 | ||
|  | 	AND r.type = 'mealplan-week'
 | ||
|  | 
 | ||
|  | UNION
 | ||
|  | 
 | ||
|  | SELECT mp.day, r.id AS recipe_id
 | ||
|  | FROM meal_plan mp
 | ||
|  | JOIN recipes r
 | ||
|  | 	ON r.name = CAST(mp.day AS TEXT) || '#' || CAST(mp.id AS TEXT)
 | ||
|  | 	AND r.type = 'mealplan-shadow';
 | ||
|  | 
 | ||
|  | CREATE VIEW recipes_resolved2
 | ||
|  | AS
 | ||
|  | 
 | ||
|  | -- The same as recipes_resolved but without the column "missing_products_count" to improve performance when this is not needed
 | ||
|  | 
 | ||
|  | SELECT
 | ||
|  | 	1 AS id, -- Dummy, LessQL needs an id column
 | ||
|  | 	r.id AS recipe_id,
 | ||
|  | 	IFNULL(MIN(rpr.need_fulfilled), 1) AS need_fulfilled,
 | ||
|  | 	IFNULL(MIN(rpr.need_fulfilled_with_shopping_list), 1) AS need_fulfilled_with_shopping_list,
 | ||
|  | 	IFNULL(SUM(rpr.costs), 0) AS costs,
 | ||
|  | 	IFNULL(SUM(rpr.calories), 0) AS calories
 | ||
|  | FROM recipes r
 | ||
|  | LEFT JOIN recipes_pos_resolved rpr
 | ||
|  | 	ON r.id = rpr.recipe_id
 | ||
|  | GROUP BY r.id;
 |