2017-08-22 3 views
1

私はデータベーステーブルから特定の列を取得しようとしているのではなく、テーブル全体を選択してjson形式にします。無関係の列は必要ありません。これは私がこれまで持っていたものです。データベーステーブルからjsonに特定の列をクエリ

$sql = "SELECT (col1,col2,col3) FROM table1"; 
    $result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection)); 

    $emparray = array(); 
    while($row =mysqli_fetch_assoc($result)) 
    { 
     $emparray[] = $row; 
    } 
    echo json_encode($emparray); 

    mysqli_close($connection); 

このコードは、エラーで返されます:Operand should contain 1 column(s)

すべてのアイデアは私が間違ってやっていますか?

ありがとうございました

答えて

1

エラーはクエリです。 3つの列を選択していますが、角かっこで囲んでいるのは()で、それらを単一の列として投影します。お試しください -

SELECT col1,col2,col3 FROM table1 

詳細はthis answerを参照してください。

-1

クエリ結果にアクセスするときは、列名を指定する必要があります。

$result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection)); 

$sql = "SELECT col1,col2,col3 FROM table1"; 

$emparray = array(); 
$index = 0; 
while($row =mysqli_fetch_assoc($result)) 
{ 
    $emparray[$index][] = $row['col1']; 
    $emparray[$index][] = $row['col2']; 
    $emparray[$index][] = $row['col3']; 

    $index++; 
} 
echo json_encode($emparray); 

mysqli_close($connection); 
+0

同じインデックスに値を格納すると、以前の値が上書きされます。また、エラーはクエリで、残りは正常です。 –

+0

@SougataBose私はそれに気付かなかった。一定 – jonggu

関連する問題