• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Вопрос по Microsoft SQL Server

  • Автор темы Автор темы Guest
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

Можно ли сделать так, что бы запрос вроде

SELECT first.cname, second.cname, first.rating
FROM Customers first, Customers second
WHERE first.rating = second.rating;

не "переделывался" в

SELECT [first].CNAME, [second].CNAME AS Expr1, [first].RATING
FROM Customers [first] INNER JOIN
Customers [second] ON [first].RATING = [second].RATING

?
 
2 Guest

1. Где это он так "переделывается" (т.е. в какой программе)?
2. На счет полей: Второе поле превратилось в Expr1 потому, что у Вас два поля с одинкаовым названием, CNAME, CNAME, RATING.
3. По поводу FROM:

FROM Customers first, Customers second
WHERE first.rating = second.rating;
и
FROM Customers [first] INNER JOIN
Customers [second] ON [first].RATING = [second].RATING

одно и тоже, только написано 2 разными способами...
 
Guest
одно и тоже, только написано 2 разными способами...

Sir Alex абсолютно прав. А происходит данное преобразования для уменьшения скорости обработки запроса. JOIN'ы выполняются быстрее, вот и Query optimizer MS Server'а переделывает.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

Курс AD