[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]

Ответ в тред 50087. [Назад]
 [ Скрыть форму ]
Имя
Не поднимать тред 
Тема
Сообщение
Капча Капча
Пароль
Файл
Вернуться к
  • Публикация сообщения означает согласие с условиями предоставления сервиса
  • В сообщениях можно использовать разметку wakabamark
  • На данной доске отображаются исходные имена файлов!
  • Разрешенные типы файлов: flash, music, archive, image, pdf, code, vector, video, text
  • Тред перестает подниматься после 500 сообщений.
  • Треды с числом ответов более 100 не могут быть удалены.
  • Старые треды перемещаются в архив после 40 страницы.

No.50087 Ответ
Файл: 3fYL8i6Q-n-155t3dn_4jDknYN0aCPtudyMf63Csj0WcqbLRuy.gif
Gif, 886.66 KB, 500×270 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
3fYL8i6Q-n-155t3dn_4jDknYN0aCPtudyMf63Csj0WcqbLRuy.gif
Тред для рандомных вопросов и определенных ответов, где доброкодер может задать свой вопрос, разного уровня сложности, который не подходит для других тематических тредов
>> No.50088 Ответ
>>50087
Думоеш взлетит
>> No.50089 Ответ
>>50088
Неа, но анону будет легче писать сюда рандомные вопросы, которые не влазиют в целый тред и не совсем подходят для тематических тредов.
>> No.50091 Ответ
>>50089
Как извлеч кводратный корень с отрицательново, нуля
>> No.50092 Ответ
>>50091
бирешь, значит, чесло, пишешь родикал над ним, и хрясь - извлекается.
>> No.50093 Ответ
Файл: cobol-japan.jpg
Jpg, 25.16 KB, 336×420
Ваши настройки цензуры запрещают этот файл.
r-18
>>50087
Зойчем ниххонцы, в щколах, изучяють — КОБОЛ
>> No.50094 Ответ
Файл: 1632946865621.png
Png, 0.95 KB, 300×20 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1632946865621.png
>>50093
Чтобы общаться на тирече
>> No.50095 Ответ
>>50087
Куда ищезает память после освобождения
>> No.50096 Ответ
>>50095
Тудаже куда уходят файлы посли асвабаждения корзины!
>> No.50098 Ответ
>>50096
> корзины
Ти хател сказать "карзины"? Дилать апичатки нихарашо.
>> No.50105 Ответ
>>50095
>>50096
Никуда не исчезает, выделенный участок памяти помечается, как свободный для размещения новых данных.
При удалении файлов происходит тоже самое, запись о файле удаляется из таблицы файловой системы и область диска, на которой он располагается становится свободной для перезаписи. Поэтому после удаления ты можешь запустить какую-нибудь тулзу, которая попытается прочитать эту область и сохранить данные в ней в другой файл. Нет никакой гарантии, что перед запуском этой тулзы эта освободившаяся область памяти не была перезаписана другим файлом. При перезаписи области диска новым файлом все еще остаются намагниченные изначально области, которые можно прочитать в лабораториях ФБР. Ты можешь использовать тулзу, которая перед удалением вначале перезаписывает файл (области диска, на которых он располагается) несколько раз рандомными данными, а только потом удаляет.
>> No.50112 Ответ
>>50087
Правда ли, что некоторые байты более равны, чем другие
>> No.50113 Ответ
>>50112
Байты не могут быть более или менее равны друг другу. Эти операции применимы к данным, которые они представляют.
>> No.50126 Ответ
>>50087
Как мне объяснить компьютеру, что я не то имела в виду
>> No.50129 Ответ
>>50126
Попробовать комбинацию клавиш CTRL+Z
>> No.50131 Ответ
Файл: live4.jpg
Jpg, 23.80 KB, 345×345 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
live4.jpg
>>50087
Как мне розвидеть кощмарный код и ночать, жить
>> No.50133 Ответ
Как взять значения из БД только буквенные и только цифровые?
Если мы юзаем LIKE %[0-9]% - мы получаем что по краям могут быть любые символы любое количество, и только по середине есть цифры.
Если мы юзаем [0-9][0-9] - мы получим только цифровые значения, но длиной в два символа. Мы не знаем какой длины будут поля, и они могут быть разной. Поэтому нам нужно свойство % о любом количестве символов, но при этом категорически не нужно свойство "любых символов", ибо они должны быть ограничены маской.
Как это можно сделать?
>> No.50134 Ответ
>>50133
Я так понял, в стандартном SQL есть только конструкция like, полноценной поддержки регулярных выражений нет.
Вот здесь (https://stackoverflow.com/a/2032768) предлагают делать так:
> SELECT * FROM @Table WHERE Col NOT LIKE '%[^0-9.]%'
в комментариях пишут, что запрос может выдавать значения с несколькими точками, как в айпи адресе, и ещё что в какой-то СУБД есть специальная функция, и лучше пользоваться ей.
О какой СУБД речь?
>> No.50135 Ответ
>>50133
Купите новый мейнфрейм.
>> No.50136 Ответ
>>50133
select where col > 0
>> No.50137 Ответ
>>50134
> NOT LIKE '%[^0-9.]%'
По идее это же должно быть идентично LIKE '%[0-9.]%' ? Кажется что все равно проблема остается с %, который подразумевает любые символы. Точек в значениях вроде не было, поэтому думаю не имеет значения, но попробую.
> О какой СУБД речь?
Вообще вопрос скорее теоретический, поэтому хотелось бы понять можно ли это сделать стандартным sql. Задачки решаю на mssql, практически нужно будет на hana db. На mssql находил функцию ISNUMERIC, что позволяет действительно выделить только цифровые, безошибочно, но не только буквенные. Потому что есть значения сочетающие буквы и цифры.
>>50136
Прикольная идея, но поле типа VARCHAR и при выполнении этой операции делается преобразование типов и ошибку выдает.
>> No.50138 Ответ
>>50137
> По идее это же должно быть идентично LIKE '%[0-9.]%' ?
Нет, не идентично. Если что, символ "^" означает "не эти символы", т.е. [^0-9] - это не цифра, [^0-9.] - это не цифра и не точка.
Т.к. ты ставишь NOT перед выражением, то получается "исключить любые строки, содержащие символы, которые не являются цифрой или точкой".
> Точек в значениях вроде не было
Тогда вот так:
> NOT LIKE '%[^0-9]%'
означает "исключить любые строки, содержащие символы, которые не являются цифрой"
А чтобы получить только буквенные:
> NOT LIKE '%[^A-Za-z]%'
означает "исключить любые строки, содержащие символы, которые не являются буквой"
Но такой запрос найдёт только ascii буквы. Не знаю, есть ли в стандартном sql конструкция, чтобы находить любые буквы, а не только ascii. Где-то упоминаются функции, добавленные поверх стандартного sql, например, здесь (https://stackoverflow.com/a/41171373).
>> No.50139 Ответ
>>50138
> "исключить любые строки, содержащие символы, которые не являются цифрой или точкой".
Да, ты прав, все верно. Просто почему-то туго в голову логика заходит выражения NOT LIKE '%[^0-9]%'.
То есть мы исключаем диапазон в который не входят 0 - 9, но при этом ещё делаем отрицание сверху, т.е. мы на самом деле не исключаем его а оставляем только его.
Тогда если убираем два отрицания то LIKE '%[0-9]%' мы выбираем диапазон в котором значения 0 -9. И.. меня логика подводит. Почему это другое?
Там исключить любые строки содержащие символы которые не являются цифрой, тут взять все строки которые являются цифрой. Значит все таки не являются цифрой, а содержат цифру? А при ^ мы исключаем все где есть цифра и берем обратное.. Ну, вроде бы понятна разница, да.
>> No.50140 Ответ
>>50133
Все запросы с `LIKE %`, у которых процентик стоит тут же первым символом, не способны использовать индекс. Это почти везде и всегда будет полный перебор строк таблицы. В серьёзных базах на больших таблицах это недопустимо зачастую. Учти это. Такие задачи обычно традиционные реляционные субд не решают. Всё равно хитрые регулярки не могут в индекс.

Проще выгрузить вообще всё батчами и в другом ЯП типа Питона использовать нормальные регулярки для отсева.
>>50137
> практически нужно будет на hana db
Тогда штудирую оффициальные доки к HanaDb. Если их регулярки такое поддерживают, это будет указано. На MySql/PostgreSQL это скорее всего невозможно, да и бессмысленно.
>> No.50142 Ответ
>>50140
> Все запросы с `LIKE %`, у которых процентик стоит тут же первым символом, не способны использовать индекс.
> Такие задачи обычно традиционные реляционные субд не решают.
А если всё-таки надо решать такую задачу? И при этом нужно что-то более оптимальное, чем полный перебор строк. Наверное в таких случаях ставят какой-нибудь движок полнотекстового поиска?
>> No.50143 Ответ
>>50142
Да. Но по твоей задаче такое ощущение, что больше половины строк подойдут под условие. А это значит, что это один фиг почти полный перебор. И полнотекствовый поиск будет вероятно за пределами стандартного SQL.
>> No.50167 Ответ
>> No.50240 Ответ
Это опять я. Задача 160 -
https://www.sql-ex.ru/learn_exercises.php#answer_ref
Решена запросом ниже. Я совсем бака если делаю столько CTE? Можно ли было сделать первый селект без юниона, когда необходимо посчитать количество уникальных значений в двух разных столбцах?

with c as
(
select pt.IDpsg, townfrom
from trip
inner join passintrip as pt on trip.tripno= pt.tripno
union
select pt.IDpsg, townto
from trip
inner join passintrip as pt on trip.tripno= pt.tripno
),

d as
(
select distinct idpsg, count(townfrom) cnt from c
group by id_psg
),

e as
(
select id_psg, cnt
from d
where cnt = (select max(cnt) from d)
)

select passenger.name from passenger
inner join e on passenger.idpsg = e.idpsg
>> No.50243 Ответ
>>50240
CTE и select from select взаимозаменяемы, а вспоминать свой старый логин лень.
>> No.50245 Ответ
>>50243
Да, но селект фром селект фром селект фром селект мне сложнее удержать в памяти.
>> No.50246 Ответ
>>50245
Скрин задачи выложи, не факт, что решу правильно, но попытаться можно.
>> No.50247 Ответ
Файл: 444444444444й.png
Png, 56.76 KB, 2542×486 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
444444444444й.png
>>50246
Да она не сложная, по-крайней мере по уровню второй стоит. Но я долго ту фигню из поста выше выдумывал.


Пароль:

[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]