Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2024, 01:37   #11
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Подскажите, правильно понимаю, что результатом SQL запроса могут быть:
1. Реальная таблица из БД.
2. Абстрактная таблица (с несуществующими столбцами, но которые создаем в момент запроса)
3. Число (например результат расчетов). Т.е. просто одно число (без таблиц столбцов), которое получаем в результате.
??
rownong вне форума Ответить с цитированием
Старый 06.01.2024, 06:39   #12
Ottava
Форумчанин
 
Регистрация: 05.09.2017
Сообщений: 157
По умолчанию

Цитата:
Сообщение от rownong Посмотреть сообщение
2. Какой оператор нужно использовать, чтобы использовать фильтр типа "содержит"?
Например выбрать все записи из table1, в которых поле log содержит текст "395948"
Код:
SELECT * FROM `table1` WHERE log LIKE '%395948%'
только у вас в поле log хранится json, и запрос будет искать строку 395948 в любом месте, а вам, я так понимаю, надо искать среди "jp_purchase_id". Тогда поиск по полному номеру из jp_purchase_id:
Код:
SELECT * FROM `table1` WHERE log LIKE '%"jp_purchase_id":"395948"%'
А если по части цифр (например 3959) из jp_purchase_id, то регулярные выражение RLIKE/REGEXP использовать надо:
Код:
SELECT * FROM `table1` WHERE log RLIKE '"jp_purchase_id":"[0-9]*3959[^"]*"'
но регулярка будет тормозить на большим количестве записей.

По уму надо json декодировать и писать в БД те поля, по которым планируется поиск. И сделать к ним индексы.


Цитата:
Сообщение от rownong Посмотреть сообщение
Подскажите, правильно понимаю, что результатом SQL запроса могут быть:
4. FALSE (при ошибке в запросе)
5. одна строка таблицы (при поиске по уникальному полю)
6. ПУСТАЯ ВЫБОРКА (если запрос ничего не нашёл)
Безопасность с Content Security Policy

Последний раз редактировалось Ottava; 06.01.2024 в 06:52.
Ottava вне форума Ответить с цитированием
Старый 15.01.2024, 21:33   #13
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Подскажите в SQL запросе возможно построить абстрактную (виртуальную) таблицу следующего вида, где показатели идут не в столбцах а в строках? Т.е. из разных таблиц собрать временные столбцы и строки такого вида как на скрине. Грубо говоря мини-дашборд.
rownong вне форума Ответить с цитированием
Старый 15.01.2024, 22:41   #14
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 495
По умолчанию

Цитата:
Сообщение от rownong Посмотреть сообщение
Подскажите в SQL запросе возможно построить абстрактную (виртуальную) таблицу следующего вида, где показатели идут не в столбцах а в строках?
В запросе нет, но вам никто не запрещает вывести эту таблицу "боком".
Valick вне форума Ответить с цитированием
Старый 15.01.2024, 23:59   #15
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Цитата:
Сообщение от Valick Посмотреть сообщение
В запросе нет, но вам никто не запрещает вывести эту таблицу "боком".
Получается создать таблицу "боком" и запросом ее заполнять?
rownong вне форума Ответить с цитированием
Старый 16.01.2024, 12:47   #16
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 495
По умолчанию

Цитата:
Сообщение от rownong Посмотреть сообщение
Получается создать таблицу "боком" и запросом ее заполнять?
Ну грубо говоря да. В запросе SQL всегда поля - это поля (вертикально), а стоки - это строки (горизонтально). На странице в таблицу HTML без разницы как выводить поля и строки по горизонтали или по вертикали.
Valick вне форума Ответить с цитированием
Старый 19.01.2024, 16:39   #17
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Еще подскажите, создавая временные (виртуальные) поля (столбцы) в результате SQL запроса, можно им имена давать не на латинице, а на кириллице и с пробелами?
rownong вне форума Ответить с цитированием
Старый 20.01.2024, 10:34   #18
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Подскажите, если есть столбце с полем артикул и в каждой строке перед артикулом приставка "1-" (например 1-23442242), то как вырезать эту приставку "1-" SQL-ем чтобы далее производить вычисления чистым артикулом?
rownong вне форума Ответить с цитированием
Старый 23.01.2024, 16:22   #19
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,888
По умолчанию

https://www.w3schools.com/sql/func_mysql_left.asp
phomm вне форума Ответить с цитированием
Старый 07.06.2024, 19:58   #20
rownong
Форумчанин
 
Регистрация: 06.11.2012
Сообщений: 119
По умолчанию

Цитата:
Сообщение от Valick Посмотреть сообщение
Названия полей перечислены в SELECT данные не беруться из ниоткуда они беруться из конкретных столбцов (полей).
Полное имя столбца может состоять из "название базы данных.название таблицы.название поля", а ещё для любых таких названий можно указывать ALIAS (альтернативное имя).
Всё это и ещё массу всего интересного (без сарказма) можно узнать из указанной выше книги.
Здравствуйте.
Дошли руки до книги.
Книга интересная, но не нашел в ней, про ALIAS (альтернативное имя).
Может это в другой книге было?
rownong вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать абстрактный класс (кривые) для вычисления координаты для некоторой x. Создать производные классы: прямая, эллипс, гипербола со своими функциями вычисления y в зависимости от входного Apels1nka Помощь студентам 0 30.04.2022 12:30
Проблема с циклом. Компилируется нормально,кнопки Один,Два,Три,Четыре и Пять работают хорошо,но кнопки 6 и 7 не работают. Bananiys24 Общие вопросы по Java, Java SE, Kotlin 1 16.06.2017 17:01
Не работают приложения litnik Python 3 22.11.2016 22:30
Написать программу вычисления площади многоугольника используя формулу для вычисления площади треугольника в качестве подпрограммы сердце Паскаль, Turbo Pascal, PascalABC.NET 0 24.12.2012 18:21
Не работают процедуры TI_ProJecT Помощь студентам 0 20.12.2011 00:16