J'ai 2 colonnes, chaque colonne a 2 rangées. Par exemple de sorte que je voudrais calculer comme ceci p> montre p>
5 Réponses :
Utilisation de max () code> et min () code> Fonctions agrégées: SELECT MAX(A) - MIN(A) AS "Total A",
MAX(B) - MIN(B) AS "Total B"
FROM TableName
Si les secondes sont inférieures à la première rangée? que se passe-t'il
Cela ne dépendra pas de la commande à la ligne, il ne s'agit que de la maxvalue - Minvalue. Veuillez vérifier le Demo
Mais j'utilise toujours des secondes rangées avant la première rangée à chaque fois
Ensuite, vous devez utiliser Réponse de Barbaros Özhan . Travailler Demo
Vous pouvez essayer ceci comme ci-dessous espère que cela aide. p> p>
dépend de ce que vous voulez vraiment gérer. Si le problème est lié à la différence entre les lignes consécutives, à l'aide de LEAD () code> ou lag () code> Les fonctions analytiques de fenêtre peuvent être une manière intelligente: with t( a, b ) as
(
select 100, 200 from dual union all
select 200, 300 from dual
), t2 as
(
select lead(a) over (order by 1) - a as "Total A",
lead(b) over (order by 1) - b as "Total B",
row_number() over (order by 1) as rn
from t
)
select *
from t2
where rn = 1;
Total A Total B RN
100 100 1
@ChawinThapongaiemmongkolsakul est le bienvenu. Veuillez envisager d'accepter l'une des réponses que vous pensez le plus utile.
BRO LIRE EST Deux compréhension de votre question Vous souhaitez d'abord supprimer de la valeur maximale et quelle solution vous est fournie par quelqu'un d'autre et d'autres que vous souhaitez supprimer de la dernière ligne / deuxième rangée. La solution vous est donc fournie pour une deuxième approche. Veuillez discuter de la requête.
select sum(Result.A) as A, sum(Result.B) as B, from (
select top 1 A , B from Table_name order by id_row_order desc
union all
select top 1 - A , -B from Table_name order by id_row_order Asc
) as Result
Oracle ne prend pas en charge la syntaxe top code>.
Je pense que * - * z
Vous pouvez la questionner comme ceci,
Related: Stackoverflow.com/Questtions/44366341/...
Je pense que vous devez fournir plus de contexte, je ne peux pas penser à un problème réel mondial quelque chose comme ça.
Et s'il y a trois rangées?