在此示例中,我在table
列中有一个1,3,4,8
的表{}},在value
列中有一个偶数的表lookup
列。
我想运行一个看起来像这样的查询
starting
但仅加入最低SELECT
value, starting
FROM
table
LEFT JOIN
lookup ON lookup.starting < value
小于starting
的行。
预期输出看起来像这样
value
答案 0 :(得分:1)
我建议这样做:
SELECT value, starting
FROM table
CROSS APPLY (select top 1 starting from lookup where lookup.starting < value order by value desc) as subquery(starting)
顶部和订单部分将协同工作,以确保您只获得一个合适的结果。
答案 1 :(得分:0)
var Set = "BENELUX,Luxembourg,PP3a,Western_Europe,France,PP6a".split(',');
var Aggreg = [],
Country = [],
Product = [];
Set.forEach(function(item, index) { //For each item in the array
switch (index % 3) { //Get remainder of index/3
case 0:
Aggreg.push(item); //If 0, Aggreg
break;
case 1:
Country.push(item); //If 1, Country
break;
case 2:
Product.push(item); //If 2, Product
}
})
console.log(Aggreg, Country, Product);