我来自MSSQL,我试图学习MySQL。 文档似乎无法帮助我。如何在MySQL中编写条件查询?
我不希望我的查询总是以SELECT开始,我希望根据条件查询SELECT,INSERT或UPDATE。我似乎无法用MySQL做到这一点。这里是我的代码:
IF COALESCE((SELECT 1 FROM gt_postmeta WHERE meta_value = '12345' LIMIT 1), 0) THEN
BEGIN
INSERT INTO gt_posts (
post_date,
post_content,
post_title,
post_name,
post_type)
VALUES (
'',
'0000493729150.jpg',
'SHAMROCK',
'',
'');
SET @parent_id = (SELECT id FROM gt_posts ORDER BY id DESC LIMIT 1);
INSERT INTO gt_postmeta(
post_id,
meta_key,
meta_value)
VALUES
(@parent_id, '_visibility', 'visible'),
(@parent_id, '_price', 'H72 SEMI-GLOSS DARK EARTH'),
(@parent_id, '_regular_price', 'H72 SEMI-GLOSS DARK EARTH'),
(@parent_id, '_sku', '12345');
INSERT INTO gt_warehouse(
warehouse_id,
stock,
product_sku)
VALUES(
'178',
'',
'12345');
END;
ELSE
BEGIN
IF COALESCE((SELECT 1 FROM gt_warehouse WHERE product_sku = '12345' AND warehouse_id = '178' LIMIT 1), 0) THEN
BEGIN
UPDATE
gt_warehouse SET stock = ''
WHERE product_sku = '12345'
AND warehouse_id = '178';
END;
ELSE
BEGIN
INSERT INTO gt_warehouse(
warehouse_id,
stock,
product_sku)
VALUES (
'',
'',
'',
'12345');
END;
END IF;
END;
END IF;
请编辑您的陈述,以便它不是全部在一行上。这是不可读的。 – msanford