[RESOLVIDO] Contar Número de linhas da Tabela baseado na informação da Data

Tenho o seguinte código abaixo (mostra os dados em uma JTable):

private void mostrar_tabela() {
    controle_Ro_table.getColumnModel().getColumn(0).setPreferredWidth(5);
    controle_Ro_table.getColumnModel().getColumn(1).setPreferredWidth(5);
    controle_Ro_table.getColumnModel().getColumn(2).setPreferredWidth(25);
    controle_Ro_table.getColumnModel().getColumn(3).setPreferredWidth(10);

    DefaultTableModel modelo = (DefaultTableModel) controle_Ro_table.getModel();
    modelo.setNumRows(0);

    try {

        while (conecta_ro.resultset.next()) {
            modelo.addRow(new Object[]{conecta_ro.resultset.getString("data_emissao"),
                conecta_ro.resultset.getString("codigo"),
                conecta_ro.resultset.getString("descricao_ocorre"),
                conecta_ro.resultset.getString("nome_cliente")});
        }

        // aqui ele conta a quantidade total de linhas
        String sql = "Select count(*) from relat_ocorrencia";
        conecta_ro.executeSQL(sql);
        while (conecta_ro.resultset.next()) {
            quantidade.setText("" + conecta_ro.resultset.getInt("COUNT(*)"));
        }

        // Aqui queria que ele contasse a quantidade de linhas porém referente ao mês atual (quantas eu fiz no mês tal)
        int conaber = 0;
        for (int i = 0; i < controle_Ro_table.getRowCount(); i++) {
            if (controle_Ro_table.getValueAt(i, 0).toString().equals()) {

            } else { //não sei como fazer aqui
                conaber++;
            }
        }
        quantidade_mes.setText(String.valueOf(conaber));

        conecta_ro.resultset.close();
    } catch (SQLException error) {

        JOptionPane.showMessageDialog(null, " Erro ao listar ROs cadastradas, tente novamente" + error);
    }
}

Esse método mostra os itens de uma Jtable e ele mostra todos os cadastros feitos, porém não sei como fazer para ele contar quantos cadastros tem no mês atual, por explo. julho.

Se alguém puder me ajudar, dar uma dica…

É essa query mesmo. Mas com algumas pequenas modificações, se vc salvou sua data como String:

"SELECT COUNT(id) AS total_julho FROM relat_ocorrencia WHERE data_ocorrencia LIKE '%/07/%';

Se salvou como date, vc usa o BETWEEN.

Aí na hora de jogar no Java, vc faz:

...resultset.getInt("total_julho");

Mas depois do Like é uma constante correto (%/07/%), quando for no mês de agosto ele terá de mostrar os que tem data 08/2019. Eu coloquei com String mesmo a data por conta do formato dd/mm/yyyy

Exatamente, então você precisará de usar os poderes do Java para tal façanha:

String mes_atual = new SimpleDateFormat("MM").format(new Date(System.currentTimeMillis()));

Em questão de formato, você pode converter:


Muito Obrigado pela ajuda amigo, fiz como vc mandou, e está do jeito que queria, utilizei o código abaixo:

String sql_mes = "SELECT COUNT(*) FROM relat_ocorrencia WHERE data_venda LIKE '%"+mes_atual+"%'";
                conecta_ro.executeSQL(sql_mes);
                    while(conecta_ro.resultset.next()){
                       quantidade_mes.setText(""+conecta_ro.resultset.getInt("COUNT(*)"));                              
                      }
1 curtida