2016-05-24 5 views
0

Я хочу сортировать базу данных MySQL по столбцу. У меня есть небольшая база данных и я хочу сортировать конкретный столбец от низкого до высокого; затем от высокой к низкой. Он должен сохранять данные после их сортировки.Сортировка базы данных MySQL по столбцу

Я хотел бы сделать это нажатием кнопки (гиперссылки?) На моей настройке на сайте, которая показывает записи MySQL в простой таблице html.

Я нашел некоторый код (ниже)

ALTER TABLE tablename ORDER BY columnname ASC;. 

Хотя я не уверен, как на самом деле реализовать этот код. Любая помощь в том, как реализовать этот код, будет очень полезна.

ответ

0

создать индекс

и

использование предложения ORDER BY в запросе,

CREATE INDEX tablename01 ON tablename (columnname); 
0
<?php 

$sort = $_GET['sort']; 

$con = mysqli_connect("localhost","my_user","my_password","my_db"); 
// Check connection 
if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

// SQL query 
$sql = "SELECT * FROM table_name ORDER BY column_name "; 

// Attach sort order 
switch (strtolower($sort)) 
{ 
    case: 'asc': 
     $sql .= 'ASC'; 
     break; 
    case: 'desc': 
     $sql .= 'DESC'; 
     break; 
    default: 
     $sql .= 'ASC'; 
} 


if ($result=mysqli_query($con,$sql)) 
{ 
    // Fetch one and one row 
    while ($row=mysqli_fetch_row($result)) 
    { 
     // Print result 
     printf ("%s (%s)\n",$row[0],$row[1]); 
    } 
    // Free result set 
    mysqli_free_result($result); 
} 

mysqli_close($con); 

// Reverse sort order for link 
$sort = strtolower($sort) == 'asc' ? 'desc' : 'asc'; 
?> 

<a href="<?php echo $_SERVER['PHP_SELF'] . '?sort=' . $sort">Change sort</a> 
Смежные вопросы