sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQL-作成した関数のテーブルを更新しましたが、テーブルの行の順序が変更されました

    テーブルには自然な行の順序がありません。ORDER BYを追加しないと、一部のデータベースシステムは実際にクエリを拒否します。 SELECTの最後にある句

    注文が変更されたのはなぜですか?

    データベースエンジンは、ストレージからの物理的な順序で行をフェッチするためです。 SQL Serverなどの一部のエンジンは、CLUSTERED INDEXを持つことができます。 これは物理的な順序を強制しますが、その正確な順序で結果が得られることが実際に保証されることはありません。

    クラスター化インデックスは、主に最適化として存在します。 PostgreSQLにも同様のCLUSTERがあります 物理的な順序を変更する関数ですが、テーブルをロックする重いプロセスです: http://www.postgresql.org/docs/9.1/static/sql-cluster.html

    行のアルファベット順を強制するにはどうすればよいですか?

    ORDER BYを追加します クエリの句。

    SELECT * FROM table ORDER BY column
    



    1. mysqlREGEXPが一致しません

    2. mysqlの新しいユーザーアクセスが拒否されました

    3. mysqlでTCP/IPを介してUnixソケットを使用する正当な理由はありますか?

    4. avgmysqlで上位トレンドを取得する方法