Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Konkatenacja MySQL i błąd nielegalnego mieszania sortowań

Jeśli pieniądze są rzeczywiście liczbą wewnątrz VARCHAR, możesz użyć rzutu.

Spróbuj tego:

concat_ws(pl.last_name,'-',cast(money AS unsigned)); // This is with decimals.
concat(`pl.last_name,'-',substring_index(money,',',1)) // Without decimals. If you use . i.e. the American currency notation you can substitute , with an .   

Edytuj

Najpierw spróbuj:concat(pl.last_name,'-',format(money,0));

To bardzo prosty kod php, którego możesz użyć.

<?php

function selecting_data(){

    $host = "host";
    $user = "username";
    $password = "password";
    $database = "database";
    $charset = "utf8";

    $link = mysqli_connect($host, $user, $password, $database);
    mysqli_set_charset($charset, $link);
    IF (!$link) {
        echo('Unable to connect to the database!');
    } ELSE {


        $query = "SELECT lastname, format(money,0) FROM mytable"; //Select query
        $result = mysqli_query($link, $query);
        while ($rows = mysqli_fetch_array($result, MYSQLI_BOTH)){
            echo $rows['lastname']."<br>".$rows['money'] ; 
        }
    }
    mysqli_close($link);


}
?>

<html>
<head><title>title</title></head>
<body>
<?PHP echo selecting_data(); ?>
</body>
</html>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najlepszy sposób na hostowanie MySQL w chmurze Azure

  2. Aby uruchomić plik .sql w MySQL

  3. PHP Jak zwrócić datetime(6) z Mysql?

  4. Wyjście polecenia MySQL jest zbyt szerokie w kliencie wiersza poleceń

  5. Pisanie zapytania SQL do pozycji SELECT z poniższej tabeli