бренды, они заносятся с разных маркет плейсов (wb, ozon)
                  
                  
                  
                  
                  
                  Хочу отказаться от идентификаторов (id, autoincrement)
                  
                  
                  
                  
                  
                  Хорошая ли практика делать primary key составной из двух полей:
                  
                  
                  external_id - внешний идентификатор продукта/бренда на площадке
                  
                  
                  platform_id - идентификатор площадки
                  
                  
                  
                  
                  
                  И так, есть две таблицы:
                  
                  
                  - Бренды:
                  
                  
                    - name
                  
                  
                    - external_id
                  
                  
                    - platform_id
                  
                  
                  - Продукты:
                  
                  
                    - external_id
                  
                  
                    - platform_id
                  
                  
                    - brand_id (external_id из таблицы brands)
                  
                  
                    - name
                  
                  
                  
                  
                  
                  То есть это выглядит примерно так:
                  
                  
                  CREATE TABLE brands (
                  
                  
                      name VARCHAR(255),
                  
                  
                      platform_id INT,
                  
                  
                      external_id INT,
                  
                  
                      PRIMARY KEY (external_id, platform_id),
                  
                  
                  );
                  
                  
                  
                  
                  
                  CREATE TABLE products (
                  
                  
                      external_id INT AUTO_INCREMENT,
                  
                  
                      name VARCHAR(255),
                  
                  
                      platform_id INT,
                  
                  
                      brand_id INT,
                  
                  
                      PRIMARY KEY (external_id, platform_id),
                  
                  
                      FOREIGN KEY (brand_id, platform_id) REFERENCES brands (external_id, platform_id)
                  
                  
                  )
                  
                  
                  
                  
                  
                  Идентификаторы (внешние идентификаторы) внутри одной площадки всегда уникальные.
                  
                  
                  
                  
                  
                  Хочу услышать мнение более опытных людей, может что-то посоветуете получше?
                  
                  
                
А почему бы просто не вкрячить все в один столбец? Первая цифра будет указывать на маркетплейс условно, все остальные цифры - уникальный айдюк. Правда все равно хочется отдельный столбец для быстрого поиска вещей по конкретному маркету без использования like
 为什么要翻译
                          .
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          为什么要翻译
                          .
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Именно поиск будет по названию через эластик, если в один столбец, то там PrimaryKey будет char, думаю на типе INT будет быстрее работать
Ничего плохого тут нет.
Не не не, нарушение 1нф
Обсуждают сегодня