我是这个网站的新手,所以如果我问的是一个基本问题和/或一个之前被问过 100 次的问题,请原谅我。我在这里搜索时找不到答案。
我想让我的脚本从 txt 文件(每行一个值)中读取值,并为每个值执行三个不同的语句。
伪代码:
$file = getfile('c:\file.txt');
foreach($value in $file)
{
DELETE x WHERE x = '$value';
DELETE y WHERE y = '$value';
DELETE z WHERE z = '$value';
}
Run Code Online (Sandbox Code Playgroud)
我知道这可能不像我的伪代码所希望的那么容易,但是我在 Google 上的所有搜索都返回了包含大量 SQL 的长篇文章,这让我无法理解。
我正在寻找我可以实现的示例,关于该主题的好文章,和/或一记耳光告诉我醒来并意识到这在 SQL 中并不容易。
我有两个表:products
和products_discounts
。如果某个产品被指定为“前 10 名”产品,并且在 中缺少定义的折扣products_discounts
,我想products_discounts
为每个缺少的记录插入一条记录。插入的值将由product_id
INSERT INTO中的和另外两个硬编码值组成。
产品
id、product_id、名称、top_ten
Products_Discounts
id、product_id、discount_amount、discount_description
以下是我计划如何手动执行此操作,但由于我将每年重复此过程几次,因此我想看看这是否可以通过几行 SQL 完成。
(1) 获取符合我的条件的产品列表。
SELECT p.product_id, pd.discount_amount FROM products AS p
LEFT OUTER JOIN products_discounts AS pd
ON p.product_id = pd.product_Id
WHERE p.top_ten = 1
AND pd.product_id IS NULL
Run Code Online (Sandbox Code Playgroud)
(2) 使用文本编辑器构建每个单独的 INSERT INTO 语句。我会使用步骤 1 的输出来获取product_id
s 但其他两个值将保持不变(硬编码)。
INSERT INTO products_discounts (product_id, discount_amount, discount_description)
VALUES ('<product_id goes here>', 10, 'Top 10 Product')
Run Code Online (Sandbox Code Playgroud)
这些步骤可以组合成几行SQL吗?