Я хочу получить максимальное значение каждой строки, а не максимальное значение поля.Например, когда у меня есть sample_table, подобный этому:
sample_table
|col1|col2|col3|
|--------------|
| 1 | 0 | 0 |
| 0 | 2 | 0 |
| 2 | 0 | 0 |
| 0 | 0 | 3 |
И запрос и результат, который я хочу, выглядит примерно так:
запрос
SELECT SOME_GET_MAX_VAL_FUNC(col1, col2, col3) AS max_val FROM sample_table;
результат
|max_val|
|-------|
| 1 |
| 2 |
| 2 |
| 3 |
Я хочу, чтобы какое-то решение заменило SOME_GET_MAX_VAL_FUNC
.Если это практически возможно в SQL, то почему?(Я новичок в SQL и BigQuery)
note
Число col
s может быть очень большим, например col1, col2, ... col200
,Поэтому решение использовать CASE
было бы для меня трудным. SQL MAX из нескольких столбцов?
В частности, остальные столбцы, отличные от максимального значения, равны 0
.