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

Pythonのセットタイプに相当するMySQLはありますか?

    SQLでセットを実装する適切な方法は、2つの追加テーブルを使用することです。

    CREATE TABLE set (
        id int unsigned PRIMARY KEY AUTO_INCREMENT
    );
    
    CREATE TABLE set_member (
        set_id int unsigned NOT NULL,
        FOREIGN KEY (set_id) REFERENCES set(id),
        member <whatever_type_your_set_is_of> NOT NULL,
        UNIQUE (set_id, member)
    );
    

    setを回避できる場合があります テーブル、セットを1つのテーブルにのみ保存する場合、そのテーブルには一意のIDがあり、レコードごとに1つのセットのみをテーブルに保存します)

    適切なSQLアプローチを探していない可能性が非常に高いため(実際には問題ありませんが、 保存と取得以外に、これらのセットに対してデータベース内操作を実行することは決してありません)、推奨される方法に従う代わりに、非正規化されたセットをテーブルの1つのフィールドに保存する可能性があります。その場合、Pythonセットを表すことができるネイティブMySQLデータ型はなく、セットをvarcharでシリアル化する必要があります。 またはtext 桁。ニーズに合ったシリアル化形式を選択するのは完全にあなた次第です。



    1. 複数の結果セットを持つexecでINSERTINTO

    2. GROUP BYクエリを最適化して、ユーザーごとに最新の行を取得します

    3. MySQLデータベースをラテン語からUTF-8に変換します

    4. PHPとMySQLをIIS7.0で動作させるにはどうすればよいですか?