私の問題はこれに関連しています。すでにQuestionを解決しましたが、うまく動作しません。MySQL:AND +パラメータを選択してスキップする問題
このクエリは、最初に 'type'列をフィルタリングし、次に 'lastChange'列の最小タイムスタンプをフィルタリングする必要があります。タイムスタンプは頻繁に更新されます。
SELECT * FROM api
WHERE (type = 'Public') AND (lastChange = (SELECT MIN(lastChange) FROM api));
type = 'Private'を保持する行に到達すると、結果が空になるため、値をフィルタリングするように見えます。
type != 'Public' // doesn't work either, because I have more than two values
しかし、クエリが実際にタイプ=「公開」を開催し、唯一の肯定的な結果でのみのものを返さないすべての行をスキップするべきではありません - どのように私はこれを適切に達成することができますか?
最新のものを探したいのであれば、 'WHERE \ 'type \' =' Public 'ORDER BY lastChange desc LIMIT 1'が動作するはずです。それはMySQLの特別な言葉であるので、 'type'についてのバッククォートに注意してください。 – aynber
私は上記のコメントを十分にupvoteできません。これは、この問題を解決する方法です。*および*あなたのクエリで予想されるエラーに関するプロのヒントが含まれています。 –
@aynberそれは唯一のキーワードhttps://dev.mysql.com/doc/refman/5.7/en/keywords.htmlであり予約されていないので、 'TYPE'をチェックする必要はありません。それの隣に '(R)'はありません。 –