すべての冗長性を取り除き、適切なプリペアドステートメント(PDOを想定)を使用し、エラー処理(少なくともスタブ)を追加すると、次のようになります。
$stmt = $conn->prepare('SELECT name, age, address, pincode FROM json WHERE name = ?');
$stmt->execute(array('peter'));
if ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo json_encode($row);
} else {
echo json_encode(array('status' => 'error'));
}
複数の行が予想される場合:
echo json_encode($stmt->fetchAll(PDO::FETCH_ASSOC));