Какие улучшения SQL вы ждете? - PullRequest
16 голосов
/ 24 января 2009

Работа с SQL показывает нам некоторые ограничения и дает нам возможность представить, что может быть.

Каких улучшений в SQL вы ждете? Что бы вы поставили поверх списка желаний?

Думаю, было бы неплохо, если бы вы опубликовали в своем ответе базу данных, в которой отсутствует запрос функции.

Ответы [ 46 ]

4 голосов
/ 06 февраля 2009

параметризованный порядок, как в:


select * from tableA order by @columName
3 голосов
/ 24 января 2009

Автоматическая денормализация.

Но я могу мечтать.

3 голосов
/ 24 января 2009

Поддержка в SQL для указания того, хотите ли вы оптимизировать план запроса, чтобы он быстро возвращал первые строки или все строки быстро.

В Oracle есть концепция подсказки FIRST_ROWS, но стандартный подход в языке будет полезен.

2 голосов
/ 24 января 2009

Улучшены сводные таблицы. Я хотел бы сказать ему, чтобы автоматически создавать столбцы на основе ключей, найденных в данных.

2 голосов
/ 20 марта 2009

Оператор DIVIDE реляционной алгебры. Я ненавижу всегда переосмысливать, как сделать все элементы таблицы a, которые находятся в всех данных из таблицы B.

http://www.tc.umn.edu/~hause011/code/SQLexample.txt

2 голосов
/ 06 февраля 2009

UPSERT или MERGE в PostgreSQL. Это та особенность, чье отсутствие просто поражает меня. У Postgres есть все остальное; почему они не могут собрать свой акт и осуществить его, даже в ограниченной форме?

2 голосов
/ 27 февраля 2009

Все они относятся к MS Sql Server / T-SQL:

  1. «Естественные» объединения на основе существующих отношений внешнего ключа.
  2. Легко использовать сохраненный результат процедуры как набор результатов
  3. Некоторая другая конструкция цикла, кроме
  4. Уникальные ограничения для ненулевых значений
  5. ИСКЛЮЧИТЬ, IN, ВСЕ предложения вместо LEFT | RIGHT JOIN, ГДЕ Х ЕСТЬ [НЕ] NULL
  6. Схема привязана к хранимой процедуре (для упрощения # 2)
  7. Отношения, связанные со схемой представления и т. Д. В нескольких базах данных
2 голосов
/ 14 февраля 2009

Проверьте ограничения с помощью подзапросов, я имею в виду что-то вроде:

CHECK ( 1 > (SELECT COUNT(*) FROM TABLE WHERE A = COLUMN))
2 голосов
/ 12 марта 2009

WITH условие для других операторов, кроме SELECT, это означает для UPDATE и DELETE.

Например:

WITH table as (
  SELECT ...
)
DELETE from table2 where not exists (SELECT ...)
2 голосов
/ 19 марта 2009

Нечто, что я называю ССЫЛКАМИ. Он объединяет две таблицы, неявно используя между ними ограничение FOREIGN KEY ... REFERENCES.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...