テーブルのタイムスタンプ列から一意の年を選択しようとしていますが、これまでのところ失敗しています。間に 3 つの一意の年がある約 50 行があります。
$getyears = $dbh->prepare("SELECT DISTINCT DATE_FORMAT(timestamp, '%Y') as timestamp FROM press");
$getyears->execute();
$years = $getyears->fetchAll(PDO::FETCH_ASSOC);
print_r($years);
この結果は次のとおりです。
Array ( [0] => Array ( [timestamp] => ) )
3 つの異なる年があるはずです。
私は MySQL の専門家ではなく、PDO もまったく初めてです。どこが間違っているのかわかりません。
更新しました
バックティックで囲みtimestamp
ましたが、それでも同じ結果です。
print_r($getyears->errorInfo());
返されたエラー情報の印刷:
Array ( [0] => 00000 [1] => [2] => )
timestamp
はint
タイプ フィールドであり、二重チェックの後、表全体には 3 つの一意の年が含まれていることがわかります。
更新 2
もう少し情報:
すべての行のtimestamp
フィールド ( int(11)
)には、次のいずれかがあります。
1230587568
1262123568
1356817968