patil.nitin8358 Ответов: 3

Выберите строку с зарплатой больше 500 без предложения where


Выберите строку с зарплатой больше 500 без предложения where

Имя Таблицы:Сотрудник
Empid Empname salary
1       A      100
2       B      600
3       C      700
4       D      200
5       E      900

выход:
Empid Empname salary
2       B      600
3       C      700 
5       E      900

[no name]

И что вы пытались сделать, прежде чем попросить нас сделать за вас домашнее задание?

patil.nitin8358

я уже пробовал
выражение case

[no name]

Нет... на самом деле здесь нет никаких доказательств того, что вы вообще что-то пробовали.

Maciej Los

Извините, но ваш вопрос вообще не имеет смысла! Как вы хотите фильтровать данные без предложения Where?

3 Ответов

Рейтинг:
1

OriginalGriff

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

Смутно возможно, что вы могли бы сделать это с помощью соединения, переместив условие WHERE в предложение ON, но нет никаких веских причин делать это, когда WHERE гораздо более эффективен и понятен!


Maciej Los

+5!

Рейтинг:
1

Abhinav S

Where предложение поможет вам отфильтровать результирующий набор и работать с меньшим подмножеством данных.
Так что, честно говоря, вы не должны действительно думать о том, чтобы не иметь where пункт.

Что касается запроса без предложения where, то вот что вы можете сделать.
Выполните запрос к таблице и переместите результат в курсор.

Выполните цикл через курсор и для элемента переместите значение зарплаты во временную переменную, если оно больше временной переменной.
Как только цикл закончится, максимальное значение будет находиться в этой временной переменной.


patil.nitin8358

я ищу все строки, которые удовлетворяют этому условию.

Рейтинг:
0

Member 14802319

А. выберите* от сотрудника соединения работника Б
На А. ИД=ИД Б.
И А. зарплата>500


Richard Deeming

Бессмысленный трюк, чтобы замаскировать WHERE предложение в самосоединении. Этот запрос менее понятен, чем аналогичный запрос с a, и почти наверняка будет работать хуже, чем аналогичный запрос с a. WHERE пункт.