25 lines
845 B
SQL
25 lines
845 B
SQL
-- Create recipes table
|
|
CREATE TABLE IF NOT EXISTS recipes (
|
|
id SERIAL PRIMARY KEY,
|
|
name TEXT NOT NULL,
|
|
meal_type TEXT NOT NULL, -- breakfast / lunch / dinner / snack
|
|
time_minutes INTEGER NOT NULL,
|
|
|
|
tags JSONB NOT NULL DEFAULT '[]', -- ["מהיר", "בריא"]
|
|
ingredients JSONB NOT NULL DEFAULT '[]', -- ["ביצה", "עגבניה", "מלח"]
|
|
steps JSONB NOT NULL DEFAULT '[]' -- ["לחתוך", "לבשל", ...]
|
|
);
|
|
|
|
-- Optional: index for filters
|
|
CREATE INDEX IF NOT EXISTS idx_recipes_meal_type
|
|
ON recipes (meal_type);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_recipes_time_minutes
|
|
ON recipes (time_minutes);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_recipes_tags_jsonb
|
|
ON recipes USING GIN (tags);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_recipes_ingredients_jsonb
|
|
ON recipes USING GIN (ingredients);
|