@bremilya

Как сделать сортировку по возрасту (по убыванию) работников в таблице mysql?

Скрипт с подключением к БД и методом выборки по условию (в моем случае по опыту менее 6).

package Db;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class DbConnection {
	
    private static String query =""; // свойство класса, в которое записывается запрос
    
	public Statement getConnection(String url,String user,String password) throws SQLException, ClassNotFoundException // метод класса. Подключение к базе данных
	{
		try {                                               // выполняется всегда. в случае возникновения ошибки в блоке try будет выполняться блок catch
		Class.forName("com.mysql.cj.jdbc.Driver");          // регистрация jdbc драйвера
		Connection con  = DriverManager.getConnection(url, user, password); // инициализация подключения к БД
		Statement stmt = con.createStatement();  // полечение класса для работы с запросами
		return stmt; // возвращает statement
		} catch(SQLException sqlEx) {
            sqlEx.printStackTrace(); // вывод StackTrace-блок информации, указывающий от куда была вызвана ошибка
        }
		return null;
	
	}
	// задает то что будем выбирать из базы
	public DbConnection Select(String param) 
	{
		
	    this.query = "Select " + param; // формирование строки Select
		return this;
	}
	 //Задает условие для выборки из базы
	public DbConnection Where(String param)
	{
		String query = " where "; // Cвойство класса, в которое записывается запрос
		this.query =this.query+ query+param; //формирование строки select
		return this;
	}
	
	
	
	
	public void sort (String Age) throws SQLException {
		String new_string ="SELECT * FROM cadreinfo ORDER BY "+Age;
		
		
	}
	
	public DbConnection From(String param)
	{
		String query = " from "; // метод from указывает из какой таблицы нужно получить данные 
		this.query =this.query +query+param; // формирование строки Select
		return this;
		
	}
		
	public void execute(Statement stmt) throws SQLException
	{
		System.out.println(this.query); //Выполнение переменной query
		     
			//Мое
			ResultSet rs = stmt.executeQuery(this.query); // Выполняется запрос в базу данных 
			String topic = "| Name | Post | Age | Experience | \n"; // Формирование шапки вывода
			System.out.println(topic); // Вывод шапки
	       while (rs.next()) { // если существует след-ая запись, то проверяем ее
	        	String out = "|"+rs.getString("name") +  " | "+ // формирование строки вывода
	        		rs.getString("Post") +  " | "+
	        		rs.getString("Age")+ " | "+
	        		rs.getString("Experience")+ " | ";
	            System.out.println(out); // вывод всей строки
	        }
		
	     
			
		}
}


Далее следует сделать сортировку таблицы по столбцу "Age" - возраст работника. Подскажите как правильно это сделать, в интернете информацию нахожу только по сортировке массива, а как это реализовать в таблице БД не понимаю.
  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
используйте order by field_name desc/asc
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы