SQL
- Easbayguy
- Уже с Приветом
- Сообщения: 7910
- Зарегистрирован: Ср авг 17, 2022 1:22 am
SQL
Нужен кому нибудь вопросик про Сиквел на интервью?
Это то что попросили проранать
select count(1), code from t1 group by code
Это что я написал со скуки
select listagg(yr,',') within group (order by yr desc) from
(select distinct to_char(inst,'YY') yr from t1 ) y
/
select * from
(
select /*+ full(t1) parallel(5) */ code, count(1) per_year,
case grouping (to_char(inst,'YY')) when 0 then to_char(inst,'YY') else 'TOTAL' end AS year
FROM t1
GROUP BY cube(code,to_char(inst,'YY')) ORDER BY code, to_char(inst,'YY')
) PIVOT (SUM(per_year) cnt
for year in ('TOTAL','24','23','22','21','20','19','18','17','16','15','14','13','12','11','10','09','08','07','06','05','04','03','02','01'))
order by 1;
Это то что попросили проранать
select count(1), code from t1 group by code
Это что я написал со скуки
select listagg(yr,',') within group (order by yr desc) from
(select distinct to_char(inst,'YY') yr from t1 ) y
/
select * from
(
select /*+ full(t1) parallel(5) */ code, count(1) per_year,
case grouping (to_char(inst,'YY')) when 0 then to_char(inst,'YY') else 'TOTAL' end AS year
FROM t1
GROUP BY cube(code,to_char(inst,'YY')) ORDER BY code, to_char(inst,'YY')
) PIVOT (SUM(per_year) cnt
for year in ('TOTAL','24','23','22','21','20','19','18','17','16','15','14','13','12','11','10','09','08','07','06','05','04','03','02','01'))
order by 1;
Пх’нглуи мглв’нафх Ктулху Р’лиех вгах’нагл фхтагн.
- OtherSide
- Уже с Приветом
- Сообщения: 13672
- Зарегистрирован: Ср окт 12, 2022 2:18 pm
Re: SQL
Вообще по финтам sql скажу следующее
Изначально это говнопарашный язык, хуже сложно представить что. возможно брейнфак. как и любой язык исзначально созданный для непрофессионалов, но ушедщий в проф. среду. Не знаю не чем писать хуже, код максимально нечитаемый и неподдерживамый
Тем более все сейчас на ORM так изгаляться вообще нет смысла. У меня пивотную таблицу вообще фронтэнд рисует из линейных данных
К тому же хвала небесам есть чат жпт который такой говнокод генерит сколько угодно, если совсем приспичит
По сути задроство для студентов. Наверное еще по инерции таких людей ищут на собеседования, но это ненадолго
Изначально это говнопарашный язык, хуже сложно представить что. возможно брейнфак. как и любой язык исзначально созданный для непрофессионалов, но ушедщий в проф. среду. Не знаю не чем писать хуже, код максимально нечитаемый и неподдерживамый
Тем более все сейчас на ORM так изгаляться вообще нет смысла. У меня пивотную таблицу вообще фронтэнд рисует из линейных данных
К тому же хвала небесам есть чат жпт который такой говнокод генерит сколько угодно, если совсем приспичит
По сути задроство для студентов. Наверное еще по инерции таких людей ищут на собеседования, но это ненадолго
-
- Сообщения: 352
- Зарегистрирован: Ср сен 13, 2023 6:48 am
- OtherSide
- Уже с Приветом
- Сообщения: 13672
- Зарегистрирован: Ср окт 12, 2022 2:18 pm
Re: SQL
Чукча не читатель?
Причем тут nosql.
1) данные типа как в примере проще на клиенте обработать
2) один хрен 90% кода генерит orm
3) для написания sql отлично подходит ИИ, потому что куски кода очень маленькие, там не надо продумывать архитектуру и прогонять мегабайты кода
На счет не дружишь я понимаю что это попытка подколоть. Меня такое смешит. Чем тут гордится то? SQL это не "критика чистого разума" и не ОТО а просто язык обработки данных рассчитанный на средние умстенные способности и любой адекватных программер согласится что задизайнен он очень плохо (сравнивая с красивыми языками например Си или c#)
-
- Сообщения: 352
- Зарегистрирован: Ср сен 13, 2023 6:48 am
Re: SQL
Молодежь?Карасёв писал(а): Пт сен 13, 2024 10:36 am а в какой момент эс-кью-эль стал sequel?
у нас так стала молодёжь говорить последние лет 10
https://en.wikipedia.org/wiki/SQL
Structured Query Language (SQL) (pronounced S-Q-L; historically "sequel")
-
- Уже с Приветом
- Сообщения: 8195
- Зарегистрирован: Вс сен 04, 2022 5:27 pm
- Easbayguy
- Уже с Приветом
- Сообщения: 7910
- Зарегистрирован: Ср авг 17, 2022 1:22 am
Re: SQL
Меня по приезду в Штаты поправили в конце девяностых, в России говорил эс кью эл.
in the early 1970s. Initially called SEQUEL (Structured English Query Language) and based on their original language called SQUARE (Specifying Queries As Relational Expressions).SEQUEL was later renamed to SQL by dropping the vowels, because SEQUEL was a trade mark registered by the Hawker Siddeley aircraft company.
Пх’нглуи мглв’нафх Ктулху Р’лиех вгах’нагл фхтагн.
-
- Сообщения: 679
- Зарегистрирован: Вт сен 06, 2022 4:06 pm
Re: SQL
Вы не любите кошек, просто потому что не умеете их готовить.OtherSide писал(а): Вообще по финтам sql скажу следующее
Изначально это говнопарашный язык, хуже сложно представить что. возможно брейнфак. как и любой язык исзначально созданный для непрофессионалов, но ушедщий в проф. среду. Не знаю не чем писать хуже, код максимально нечитаемый и неподдерживамый
Классное решение. Давайте захерачим на клиента пару терабайт, пусть он сначала часик подождет, а когда и если дождется, пусть там сам с ними мудохается на своем говнобраузере в своем говнотелефоне. В конце концов это же ему надо.OtherSide писал(а): Тем более все сейчас на ORM так изгаляться вообще нет смысла. У меня пивотную таблицу вообще фронтэнд рисует из линейных данных
При слове ОРМ собрание программистов томно застонало. Это же сколько придётся потрахаться чтобы в конце концов все заработало без тормозов и невдолбенных закадровых селектов и апдейтов со всяким отложенными ленивыми загрузками прочими N+1 селектами.
Вот тут полностью согласен, чат ГПТ с удовольствием сгенерит вам кучу говнокода, только попросите.OtherSide писал(а): К тому же хвала небесам есть чат жпт который такой говнокод генерит сколько угодно, если совсем приспичит
- veey
- Уже с Приветом
- Сообщения: 2746
- Зарегистрирован: Вс авг 21, 2022 10:20 pm
-
- Уже с Приветом
- Сообщения: 8195
- Зарегистрирован: Вс сен 04, 2022 5:27 pm
Re: SQL
я тоже читал эти историиEasbayguy писал(а): in the early 1970s. Initially called SEQUEL (Structured English Query Language) and based on their original language called SQUARE (Specifying Queries As Relational Expressions).SEQUEL was later renamed to SQL by dropping the vowels, because SEQUEL was a trade mark registered by the Hawker Siddeley aircraft company.
но наши ДБА говорили SQL (но они все все иностранцы) а "сиквел" молодёжь и бизнес (местные)
но у меня нет ожиданий правильных технических терминов от MBA
в принципе конечно пофиг , но тогда и впрямую связанные с SQL: DDL, DCL , DML надо как-то переиначить
-
- Уже с Приветом
- Сообщения: 8195
- Зарегистрирован: Вс сен 04, 2022 5:27 pm
-
- Сообщения: 352
- Зарегистрирован: Ср сен 13, 2023 6:48 am
Re: SQL
Молодежь училась здесь, а в колледжах учителя говорят sequelКарасёв писал(а):я тоже читал эти историиEasbayguy писал(а): in the early 1970s. Initially called SEQUEL (Structured English Query Language) and based on their original language called SQUARE (Specifying Queries As Relational Expressions).SEQUEL was later renamed to SQL by dropping the vowels, because SEQUEL was a trade mark registered by the Hawker Siddeley aircraft company.
но наши ДБА говорили SQL (но они все все иностранцы) а "сиквел" молодёжь и бизнес (местные)
но у меня нет ожиданий правильных технических терминов от MBA
в принципе конечно пофиг , но тогда и впрямую связанные с SQL: DDL, DCL , DML надо как-то переиначить
В MS говорят sequel
- OtherSide
- Уже с Приветом
- Сообщения: 13672
- Зарегистрирован: Ср окт 12, 2022 2:18 pm
Re: SQL
KinDzaDza писал(а):OtherSide писал(а): Вообще по финтам sql скажу следующее
Изначально это говнопарашный язык, хуже сложно представить что. возможно брейнфак. как и любой язык исзначально созданный для непрофессионалов, но ушедщий в проф. среду. Не знаю не чем писать хуже, код максимально нечитаемый и неподдерживамыйКлассное решение. Давайте захерачим на клиента пару терабайт, пусть он сначала часик подождет, а когда и если дождется, пусть там сам с ними мудохается на своем говнобраузере в своем говнотелефоне. В конце концов это же ему надо.OtherSide писал(а): Тем более все сейчас на ORM так изгаляться вообще нет смысла. У меня пивотную таблицу вообще фронтэнд рисует из линейных данных
При слове ОРМ собрание программистов томно застонало. Это же сколько придётся потрахаться чтобы в конце концов все заработало без тормозов и невдолбенных закадровых селектов и апдейтов со всяким отложенными ленивыми загрузками прочими N+1 селектами.Вот тут полностью согласен, чат ГПТ с удовольствием сгенерит вам кучу говнокода, только попросите.OtherSide писал(а): К тому же хвала небесам есть чат жпт который такой говнокод генерит сколько угодно, если совсем приспичит
Все намного проще - ваши познания в айти минимальны и вы понятия не имеете ни о рельяционной алгебере ни о дизайне языков, поэтому вам семантика sql и кажется вершиной мыслиВы не любите кошек, просто потому что не умеете их готовить.
Это вы в Pivot собрались пару терабайт сунуть? Похоже ваши познания в базах меньше чем минимальные. Пивот просто разворачивает табличку, т.е. она по определению должна помещаться на экране - а это несколько тысяч записей от силыКлассное решение. Давайте захерачим на клиента пару терабайт,
Вообще оптимизация запросов - это отдельная задача и данный топик явно не об этом
-
- Уже с Приветом
- Сообщения: 8195
- Зарегистрирован: Вс сен 04, 2022 5:27 pm
-
- Сообщения: 352
- Зарегистрирован: Ср сен 13, 2023 6:48 am
Re: SQL
Предложить сравнивать c# и sql может только человек не разбирающийся ни в том ни в другомOtherSide писал(а): просто язык обработки данных рассчитанный на средние умстенные способности и любой адекватных программер согласится что задизайнен он очень плохо (сравнивая с красивыми языками например Си или c#)
бтв linq в c# - дословная копия базового sql
- Easbayguy
- Уже с Приветом
- Сообщения: 7910
- Зарегистрирован: Ср авг 17, 2022 1:22 am
Re: SQL
Да уж, ушла суровая простота и лаконичность языка. Скажем раньше надо было посмотреть количество записей во всех табличках, один селект генерит спискок команд, потом запускаешь! И теперь посмотрите на это уе..ище, которое я запускаю в постгресиквел..
select table_schema,
table_name,
(xpath('/row/cnt/text()', xml_count))[1]::text::int as row_count
from (
select table_name, table_schema,
query_to_xml(format('select count(*) as cnt from %I.%I', table_schema, table_name), false, true, '') as xml_count
from information_schema.tables
where table_schema not in ( 'pg_catalog' ,'information_schema')
) t order by table_schema, table_name;
select table_schema,
table_name,
(xpath('/row/cnt/text()', xml_count))[1]::text::int as row_count
from (
select table_name, table_schema,
query_to_xml(format('select count(*) as cnt from %I.%I', table_schema, table_name), false, true, '') as xml_count
from information_schema.tables
where table_schema not in ( 'pg_catalog' ,'information_schema')
) t order by table_schema, table_name;
Пх’нглуи мглв’нафх Ктулху Р’лиех вгах’нагл фхтагн.