2016-10-12 2 views
2

私はPHP + HTML5 + JSを使って小さなwebappを作成しました。私のローカルWebサーバー(私のラップトップ)で問題なく動作し、XAMPP v3.2.2をサーバーバージョンで使用しています: 10.1.9-MariaDB mariadb.orgバイナリ配布。ネストされた算術に関する問題

私はすべてのファイルをアップロードし、データベースをWebサーバーにインポートしました.1つのPHPファイルにデータベースへのMySQLクエリを実行する奇妙なエラーが発生しました。

私は、クエリを持って、手動で私の地元のphpMyAdminにEXECおよびエラーなしで動作しますが、Webサーバに構文エラーがあります:(

これは、クエリの例です:

SELECT DISTINCT 100 AS cyear, DATE_FORMAT(personas.fecha, '%d/%m/%Y') AS fecha, 1 AS numb, personas 
.id_persona, personas.distancia, (
    personas.rating - (
     SELECT valor.valor FROM valor WHERE valor.valor=1 AND valor.distancia=(
      SELECT personas.distancia WHERE personas.id_persona=1))) AS calc, (personas.rating + 
personas.rating - (
       SELECT valor.valor FROM valor WHERE valor.valor=1 AND valor.distancia=(
        SELECT personas.distancia WHERE personas.id_persona=1))) As clase, personas.rating 
FROM personas, valor WHERE personas.id_persona=1 AND valor.valor=1 

エラー:#1064 - あなたのSQL構文でエラーが発生している。右の構文についてはMySQLサーバのバージョンに対応するマニュアルを確認し

何が間違っている私が見つけるためにしようとして時間を持って、mayb? e廃止予定の関数を使用しますか?読んでくれてありがとう、その悪い英語を許してください。

+0

インターネット利用上のウェブサーバは、 ''代わりにMariaDB'をMySQL'。このバージョン:サーバーバージョン:5.6.33 MySQLコミュニティサーバー。 – candlejack

答えて

2

FROM personasは2か所にありません。

なぜなら、MariaDBは気にしませんが、MySQLは構文エラーとみなします。

はここで固定コードません:(構文エラー。)

SELECT DISTINCT 100 AS cyear, DATE_FORMAT(personas.fecha, '%d/%m/%Y') AS fecha, 1 AS numb, personas 
.id_persona, personas.distancia, (
    personas.rating - (
     SELECT valor.valor FROM valor WHERE valor.valor=1 AND valor.distancia=(
      SELECT personas.distancia FROM personas WHERE personas.id_persona=1))) AS calc, (personas.rating + 
personas.rating - (
       SELECT valor.valor FROM valor WHERE valor.valor=1 AND valor.distancia=(
        SELECT personas.distancia FROM personas WHERE personas.id_persona=1))) As clase, personas.rating 
FROM personas, valor WHERE personas.id_persona=1 AND valor.valor=1 
+0

あなたは正しいです!ありがとうございました! – candlejack

関連する問題