Ответы пользователя по тегу MySQL
  • Почему себя так ведет like?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Вопрос? Получается он отрабатывает на несколько дальше ? находя букву С?

    Нет, не должно такого быть. Возможно какие-то проблемы с БД, например с индексами. А возможно у вас не тот запрос, который вы привели в вопросе.

    Чтобы отрабатывал букву "C" в любой позиции должно быть
    SELECT * FROM watch WHERE watch_brand like "%C%" and sold !="yes"
    Ответ написан
  • Как разделить два значения в MySql?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Да пожалуйста, делите, зачем только вы сюда CONCAT приплели?
    sum / count AS check
    https://learn.microsoft.com/ru-ru/sql/t-sql/langua...
    Ответ написан
  • Как обновить запись при условии?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    В колонках `time_update` и `time` хранится одинаковое время, мне необходимо обновить запись только в том случае, если они одинаковы, когда время разное - обновлять не нужно.

    т.е. когда (WHERE) time_update = time
    у вас уже написано:
    WHERE `id`='$rows[id]'
    логично дописать туда:
    WHERE `id`='$rows[id]' AND `time_update` = `time`
    Не верю, что вы этого не попробовали. А если попробовали, то что у вас не получилось?
    Ответ написан
    1 комментарий
  • Как вытащить данные из таблицы по данным из where другой таблицы?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    SELECT *
    FROM items LEFT JOIN results ON items.id = results.items_id
    WHERE items.prise > results.sell_prise
    Ответ написан
    Комментировать
  • Как сделать выборку с условием для всех родительских элементов?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    я правда не знаю, доступна ли эта магия на MySQL
    WITH CTE_Hierarchy (id,  parent_id, level, path) 
    AS 
    (SELECT id, parent_id, 1 ,cast(slug as varchar(100)) as path
        FROM 
            categoryes
        WHERE parent_id IS NULL //Если для пустых parent_id предусмотрено другое значение то поменять условие
        UNION ALL 
           SELECT subcategory.id, subcategory.parent_id, level + 1, 
    		case cast(path + '/' + subcategory.slug as varchar(100)) as path
        FROM  categoryes AS subcategory 
    INNER JOIN CTE_Hierarchy AS parentHierarchy ON subcategory.parent_id = parentHierarchy.id)


    https://docs.microsoft.com/en-us/sql/t-sql/queries...
    Ответ написан
    Комментировать
  • Как правильно доработать SQL-запрос?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Добавить джойн:
    LEFT JOIN keywords ON keywords.event_id = events.id

    и тогда ваше новое условие заработает
    Чтобы небыло дублей в результатах выборки (при совпадении по нескольким ключевым словам могут появиться) используйте SELECT DISTINCT
    Ответ написан
    1 комментарий
  • Как написать SQL запрос для данного случая?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Мне кажется, что вашу задачу можно сформулировать иначе:
    1. В таблице checkanaliz значение поля id_napravlenie заменить на id_history из таблицы napravlenie
    2. Из таблицы napravlenie удалить записи в которых id <> id_history
    Может быть это натолкнет вас на решение, писать за вас запрос не очень хочется.
    Ответ написан
  • Как сравнить массив с базой данных и вернуть булевое значение?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Сделать запрос к базе данных, с отбором по значениям из массива. Если результат содержит столько же строк, сколько элементов в массиве, вернуть true иначе false
    Ответ написан
    Комментировать
  • Как XML + XSD в SQL?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Это зависит от того, какие имена полей вам нужны. Вы можете например распарсить XSD, на основании его данных сгенерировать текст запроса для создания таблиц, и выполнить его. А можете тупо создать таблицу с именами полей FIELD_1 ... FIELD_N. Всё зависит от вашей задачи.

    Давайте начнем с того, что вы объясните, зачем вам запихивать данные в одну таблицу.
    В вашей таблице, будет столько записей, сколько видов деятельности у одной компании, для каждого вида деятельности одна запись. Например:
    godtable: 
    compani_id, company_name, ... (any more fields of company) ... , 
    id_activity, name_activity, is_base, grnip, record_date

    При этом вы получите не нормализованную базу данных, с избыточной информацией, потому что каждая запись будет дублировать аналогичную информацию из других записей. У вас будут повторяться данные о компании, столько раз, сколько у компании видов деятельности. А также, у вас будет повторяться информация о виде деятельности, столько раз, у скольких компаний он используется.

    Для того чтобы получить нормализованную базу, вам нужны например три таблицы:
    1. Юрлица (companies): id. name, и т.д.
    2. Виды деятельности юрлиц (compani_activity): id_company, id_activity, is_base, grnip, record_date
    3. Реестр видов деятельности: (activities): id, name


    Если у вас была идея, хранить все виды деятельности в одной записи но в разных колонках, то это была идея не правильная, у вас тогда у разных записей будет разное количество колонок, и рано или поздно вы наткнетесь на то, что вам не хватит колонок.
    Ответ написан