Como capturar a quantidade de linhas de uma consulta SQL?

Minhas busca:
select valorfinal from tbos where tipo=‘VENDA’ or tipo=‘ENTRADA’ or tipo=‘SAIDA’;

Preciso de um retorno com a quantidade de linhas do resultado, ou melhor ainda, um jeito de pegar o resultado das linhas e setar em variáveis. O comando rs.getString(coluna); só pega a primeira linha das colunas.

Seria isso?

SELECT COUNT(*) FROM tbos

Isso aqui, por exemplo, retorna 3:

CREATE TABLE MinhaTabela(identificador integer PRIMARY KEY, Nome text);
INSERT INTO MinhaTabela VALUES(1111,'João');
INSERT INTO MinhaTabela VALUES(2222,'Ana');
INSERT INTO MinhaTabela VALUES(3333,'Maria');

SELECT COUNT(*) FROM MinhaTabela; # retorna 3

Aí vc criou a tabela. Dá certo na busca em uma já existente? como eu capturo o resultado pra uma variável no java?

Eu incluí a criação da tabela e insert pra você só copiar e colar pra testar. Foi só um exemplo. É só substituir o “NomeDaSuaTabelaAqui” pelo nome da tabela que você usa:

SELECT COUNT(*) AS EsseEhMeuResultado FROM NomeDaSuaTabelaAqui;

O resultado desse comando vai ser um número único. Só pegar e atribuir numa variável (considerando que você esteja usando JDBC e que rs seja um ResultSet.

int totalDeLinhas = rs.getInt("EsseEhMeuResultado")

Perfeito. Muito obrigado.
Não sei o que seria de mim sem essa comunidade.

Nesse caso vai te retornar a quantidade de registros existentes na tabela, para saber a quantidade de registros retornados por uma consulta, os filtros da consulta principal devem ser aplicados também na consulta de quantidade de registros!
Embora seja mais elegante ver o size() da lista diretamente pelo java, evitando assim uma consulta a mais no banco de dados, logicamente após já se ter os valores da consulta recuperados e preenchidos em uma lista.

2 curtidas