Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在投票下方张贴的答案左边的勾号上唱。看看为什么它很重要!对答案进行投票也很重要。投票选出有帮助的答案。还有更多。。。当有人回答你的问题时,你可以检查一下该怎么办-。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误_Mysql_Sql_Google Bigquery - Fatal编程技术网

Mysql 在投票下方张贴的答案左边的勾号上唱。看看为什么它很重要!对答案进行投票也很重要。投票选出有帮助的答案。还有更多。。。当有人回答你的问题时,你可以检查一下该怎么办-。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误

Mysql 在投票下方张贴的答案左边的勾号上唱。看看为什么它很重要!对答案进行投票也很重要。投票选出有帮助的答案。还有更多。。。当有人回答你的问题时,你可以检查一下该怎么办-。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误,mysql,sql,google-bigquery,Mysql,Sql,Google Bigquery,在投票下方张贴的答案左边的勾号上唱。看看为什么它很重要!对答案进行投票也很重要。投票选出有帮助的答案。还有更多。。。当有人回答你的问题时,你可以检查一下该怎么办-。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误是…:在第3行第36列遇到“max”。他期待着:“结束”。我没有最强的SQL技能,所以我不太确定我在这里缺少了什么。@BrianSchroeter。它缺少了连接运算符。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出


在投票下方张贴的答案左边的勾号上唱。看看为什么它很重要!对答案进行投票也很重要。投票选出有帮助的答案。还有更多。。。当有人回答你的问题时,你可以检查一下该怎么办-。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误是…:在第3行第36列遇到“max”。他期待着:“结束”。我没有最强的SQL技能,所以我不太确定我在这里缺少了什么。@BrianSchroeter。它缺少了连接运算符。这当然更干净了,我真的很感激!我试图立即运行它,但最终在BigQuery中出错。我收到的错误是…:在第3行第36列遇到“max”。他期待着:“结束”。我没有最强的SQL技能,所以我不太确定我在这里缺少了什么。@BrianSchroeter。它缺少连接运算符。
SELECT
sku,
CASE
  WHEN MIN(YEAR) = MAX(YEAR) THEN MIN(YEAR)
  ELSE CONCAT(MIN(YEAR), '-', MAX(YEAR))
 END AS YEAR,
 make, model, submodel, notes
FROM
(SELECT @ldfnr:= IF((@old_make = tab.make
  AND @old_model = tab.model
  AND @old_submodel = tab.submodel
  AND @old_notes = tab.notes
  AND (@old_year = tab.`year`
  OR @old_year = tab.`year`-1)) , @ldfnr, @ldfnr+1) AS nr, tab.* ,
  @old_make := tab.make , @old_model := tab.model ,
  @old_submodel := tab.submodel , @old_notes := tab.notes ,
  @old_year := tab.`year`
FROM tableName AS tab,
  (SELECT @ldfnr:=0, @old_model:='', @old_submodel:='', @old_notes:='', @old_year:='', @old_make:=''  ) AS tmp
ORDER BY make, model, submodel, notes, `YEAR` ASC) AS mytab
GROUP BY nr
ORDER BY nr;
+------+------+-----------+-------+----------+------------------------------------------+
| SKU  | Year |   Make    | Model | Submodel |                  Notes                   |
+------+------+-----------+-------+----------+------------------------------------------+
| 0001 | 1995 | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1995 | Chevrolet | Astro | CL       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1995 | Chevrolet | Astro | LS       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1996 | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1996 | Chevrolet | Astro | CL       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1996 | Chevrolet | Astro | LS       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1997 | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1997 | Chevrolet | Astro | LT       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 2001 | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
+------+------+-----------+-------+----------+------------------------------------------+
+------+-------------+-----------+-------+----------+------------------------------------------+
| SKU  |    Year     |   Make    | Model | Submodel |                  Notes                   |
+------+-------------+-----------+-------+----------+------------------------------------------+
| 0001 | 1995 - 1997 | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1995 - 1996 | Chevrolet | Astro | CL       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1995 - 1996 | Chevrolet | Astro | LS       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 1997        | Chevrolet | Astro | LT       | Clear Lens; Chrome Housing; Pair; 1 pc.; |
| 0001 | 2001        | Chevrolet | Astro | Base     | Clear Lens; Chrome Housing; Pair; 1 pc.; |
+------+-------------+-----------+-------+----------+------------------------------------------+
select sku, make, model, submodel, notes,
       (case when min(year) = max(year) then min(year)
             else min(year) || '-' || max(year)
        end) as year
from (select qt.*,
             sum(case when qtprev.make is null then 1 else 0 end) over (partition by qt.make, qt.model, qt.notes, qt.submodel, qt.sku order b qt.year) as grp
      from `tint-world-aces-processing.aces_table.queryTest` qt left join
           `tint-world-aces-processing.aces_table.queryTest` qtprev
           on qt.make = qtprev.make and qt.model = qtprev.model and
              qt.notes = qtprev.notes and qt.submodel = qtprev.submodel and
              qt.sku = qtprev.sku and qt.year = qtprev.year + 1
     ) qt
group by sku, make, model, submodel, notes;