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

動的なフィールド数を持つMySQLデザイン

    C)正規形 を使用する;適切なキーで複数の行を使用します。例:

    mysql> SELECT * FROM blah;
    +----+-----+-----------+
    | K  | grp | name      |
    +----+-----+-----------+
    |  1 |   1 | foo       |
    |  2 |   1 | bar       |
    |  3 |   2 | hydrogen  |
    |  4 |   4 | dasher    |
    |  5 |   2 | helium    |
    |  6 |   2 | lithium   |
    |  7 |   4 | dancer    |
    |  8 |   3 | winken    |
    |  9 |   4 | prancer   |
    | 10 |   2 | beryllium |
    | 11 |   1 | baz       |
    | 12 |   3 | blinken   |
    | 13 |   4 | vixen     |
    | 14 |   1 | quux      |
    | 15 |   4 | comet     |
    | 16 |   2 | boron     |
    | 17 |   4 | cupid     |
    | 18 |   4 | donner    |
    | 19 |   4 | blitzen   |
    | 20 |   3 | nod       |
    | 21 |   4 | rudolph   |
    +----+-----+-----------+
    21 rows in set (0.00 sec)
    

    これは、 group_concat 。一意のキーKがあることに気付くでしょう すべての行に対して。別のキーgrpがあります これは各カテゴリを表します。残りのフィールドはカテゴリメンバーを表し、カテゴリごとに可変数のメンバーが存在する可能性があります。



    1. 2つのフィールドが存在する場合は更新し、存在しない場合は挿入します(MySQL)

    2. WHERE句のフィールドの順序はMySQLのパフォーマンスに影響しますか?

    3. MySQLでMAXを使用する方法は?

    4. SQL Serverのvarchar列から奇妙な文字(帽子をかぶったA)を削除します