Я создаю трехступенчатую систему фильтрации, и пока она работает, но теперь я хочу иметь элементы с большим количеством категорий. Все идентификаторы категорий являются INT. Нужно ли мне это менять или какой лучший вариант это сделать?
На данный момент это мое решение. Итак, у меня есть столбец (избыточность) для разделения партнеров, которые присутствуют в базе данных более одного раза, поэтому я не получаю двойных результатов, если фильтрую по всем.
Но я хочу (если возможно) возможность записи большего количества категорий в Category_id/subcategory_id/subcategory2_id, поэтому мне не нужно много раз записывать одного партнера в базу данных, и я все равно могу получить его на PHP.
Вот моя база данных в виде кода:
Я создаю трехступенчатую систему фильтрации, и пока она работает, но теперь я хочу иметь элементы с большим количеством категорий. Все идентификаторы категорий являются INT. Нужно ли мне это менять или какой лучший вариант это сделать? [img]https://i.sstatic.net/0TRtJ.png[/img]
[img]https ://i.sstatic.net/LcBbI.png[/img] На данный момент это мое решение. Итак, у меня есть столбец (избыточность) для разделения партнеров, которые присутствуют в базе данных более одного раза, поэтому я не получаю двойных результатов, если фильтрую по всем. Но я хочу (если возможно) возможность записи большего количества категорий в Category_id/subcategory_id/subcategory2_id, поэтому мне не нужно много раз записывать одного партнера в базу данных, и я все равно могу получить его на PHP. Вот моя база данных в виде кода: [code]-- phpMyAdmin SQL Dump -- version 5.0.2 -- https://www.phpmyadmin.net/ -- -- Host: localhost -- Erstellungszeit: 19. Okt 2020 um 11:36 -- Server-Version: 10.4.13-MariaDB -- PHP-Version: 7.4.8
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */;
CREATE TABLE `partner` ( `partner_id` int(11) NOT NULL, `category_id` int(11) NOT NULL, `subcategory_id` int(11) NOT NULL, `subcategory2_id` int(11) NOT NULL, `partner_name` text NOT NULL, `partner_logo` text NOT NULL DEFAULT '[Kein Bild vorhanden]', `partner_link` text NOT NULL, `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1=Active | 0=Inactive', `redundancy` int(11) NOT NULL DEFAULT 1 COMMENT '1 = First Object\r\n0 = Doubled Object' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; [/code] Спасибо :)