Sql where语句中的多个条件 名称 品牌名称 商品已售出 惠普笔记本电脑 惠普 500 :索尼相机 1000 笔记本电脑 东芝 200 苹果手机 0 佳能照相机 原则 300 佳能照相机 200
最好的方法就是这样做Sql where语句中的多个条件 名称 品牌名称 商品已售出 惠普笔记本电脑 惠普 500 :索尼相机 1000 笔记本电脑 东芝 200 苹果手机 0 佳能照相机 原则 300 佳能照相机 200,sql,Sql,最好的方法就是这样做 WITH ( VALUES ('HP'), ('Acer'), ('VAKIND'), ('Casio'), ('Lenovo'), ('BF1 Soul'), ('Sony') ) as lookup(val) SELECT -- some sql statement FROM some_table LEFT JOIN lookup on s
WITH (
VALUES ('HP'),
('Acer'),
('VAKIND'),
('Casio'),
('Lenovo'),
('BF1 Soul'),
('Sony')
) as lookup(val)
SELECT
-- some sql statement
FROM some_table
LEFT JOIN lookup on some_table.brand_name = lookup.val
WHERE lookup.val is null
注意--查找表可以是一个动态创建的表,就像我在这里所做的那样,也可以使该表成为一个实际的表,并通过更改表来控制查询的功能。您的问题似乎有点矛盾,或者我搞错了。您的输入不完整。您没有指定表。我在下面列出了您两个问题的组合。我不知道这对你是否有帮助
SELECT name
,item_sold_30d
,brand_name
,category_name
,product_url
FROM (
SELECT DISTINCT b.name,b.item_sold_30d , b.brand_name ,b.category_name, a.product_url, ROW_NUMBER() OVER (PARTITION BY b.name,b.item_sold_30d , b.brand_name ,b.category_name ORDER BY a.product_url) as rowId
FROM "dasync"."outputs_lazada_my" a
INNER JOIN
(select brand_name,name,item_sold_30d,b.category_name
from "catalog-my"."catalog_my_20210425"
where store_merchant_id like '%lazada%' and name in ('HP','Acer','VAKIND','Casio','Lenovo','BF1 Soul','Sony','Lenovo','Samsung','Bosch','Xiaomi',
'Panasonic','Dell','Rondaful','Toshiba','UCUC',
'zanzea','CAMERON SINO','ZZOOI','Canon','Philips','LEGO','Glamorousky','ZeroQiQi','Baosity','Huawei'
,'Alloet','Hontinga','OME','Jotun','Yamaha')
group by brand_name,name,item_sold_30d,b.category_name) b on b.name = a.name
where b.brand_name = ''
ORDER BY b.item_sold_30d DESC
) dt
WHERE dt.rowId = 1
limit 10;
用您正在使用的数据库标记您的问题。此外,您的查询几乎与上面的问题无关。也许你的问题需要更多的解释。@GordonLinoff是的,但我想在第一个查询中加入第二个查询,这样我就可以得到与上面类似的输出。不清楚你有什么问题-根据你想要的描述
选择。。。其中b.brand_name=''和中的名称(':sony camera',canon camera')代码>。这个查询不返回您列出的结果有什么原因吗?@WOUNDEDStevenJones当我这样做时,它不会给出字段brand_名称empty@WOUNDEDStevenJones加上我的表包含数百行,所以我不知道每行的确切名称,所以我不能使用WHERE b.brand_name=''和name IN(':sony camera',canon camera');