Pytania otagowane jako common-table-expression

Wyrażenie wspólnej tabeli (CTE) to tymczasowy zestaw wyników zdefiniowany w zakresie wykonywania pojedynczej instrukcji SELECT, INSERT, UPDATE, DELETE lub CREATE VIEW.

9
Kiedy stosować Common Table Expression (CTE)
Zacząłem czytać o Common Table Expression i nie mogę wymyślić przypadku użycia, w którym musiałbym ich użyć. Wydają się być zbędne, podobnie jak w przypadku tabel pochodnych. Czy brakuje mi czegoś lub źle rozumiem? Czy ktoś może podać prosty przykład ograniczeń z regularnymi zapytaniami do tabeli wyboru, pochodnej lub tabeli …

4
Czy istnieje różnica w wydajności między CTE, podzapytaniem, tabelą tymczasową lub zmienną tabelową?
W tym doskonałym pytaniu SO omówiono różnice między CTEi sub-queries. Chciałbym konkretnie zapytać: W jakich okolicznościach każde z poniższych jest bardziej wydajne / szybsze? CTE Pod-zapytanie Stół tymczasowy Zmienna tabeli Tradycyjnie używałem dużo do temp tablesprogramowania stored procedures- ponieważ wydają się one bardziej czytelne niż wiele powiązanych ze sobą zapytań …


6
Jak utworzyć tabelę Temp za pomocą zapytania SELECT * INTO tempTable FROM CTE
Mam zapytanie CTE MS SQL, z którego chcę utworzyć tabelę tymczasową. Nie jestem pewien, jak to zrobić, ponieważ powoduje to Invalid Object namebłąd. Poniżej znajduje się całe zapytanie w celach informacyjnych SELECT * INTO TEMPBLOCKEDDATES FROM ;with Calendar as ( select EventID, EventTitle, EventStartDate, EventEndDate, EventEnumDays,EventStartTime,EventEndTime, EventRecurring, EventStartDate as PlannedDate …

3
Połączenie INSERT INTO i WITH / CTE
Mam bardzo złożony CTE i chciałbym wstawić wynik do fizycznej tabeli. Czy poniższe informacje są ważne? INSERT INTO dbo.prf_BatchItemAdditionalAPartyNos ( BatchID, AccountNo, APartyNo, SourceRowID ) WITH tab ( -- some query ) SELECT * FROM tab Myślę o użyciu funkcji do stworzenia tego CTE, która pozwoli mi ponownie użyć. jakieś …

2
Upraszczanie i jak wykonać wiele CTE w zapytaniu
Mam to proste zapytanie T-SQL, które emituje kilka kolumn z tabeli, a także łączy informacje z innych powiązanych tabel. Mój model danych jest prosty. Mam zaplanowane wydarzenie z uczestnikami. Muszę wiedzieć, ilu uczestników bierze udział w każdym wydarzeniu. Moim rozwiązaniem jest dodanie CTE, który grupuje zaplanowane wydarzenia i zlicza liczbę …

9
Różnica między CTE a SubQuery?
Z tego postu Jak używać ROW_NUMBER w następującej procedurze? Istnieją dwie wersje odpowiedzi, w których jedna używa a, sub-querya druga używa a, CTEaby rozwiązać ten sam problem. A zatem, jaka jest zaleta używania zapytania CTE (Common Table Expression)nad „pod-zapytaniem” (a zatem bardziej czytelne, co faktycznie robi zapytanie) Jedyną zaletą korzystania …


2
Maksymalna rekursja 100 została wyczerpana przed zakończeniem instrukcji
Ciągle otrzymuję max recursion error z tym zapytaniem. Na początku myślałem, że dzieje się tak, ponieważ zwracana jest wartość null, a następnie spróbuje dopasować wartości null powodujące błąd, jednak przepisałem zapytanie, aby wartości null nie były zwracane, a błąd nadal występuje. Jaki byłby najlepszy sposób na przepisanie tej funkcji, aby …

7
Jak używać klauzuli „WITH” w MySQL?
Konwertuję wszystkie moje zapytania SQL Server na MySQL i wszystkie moje zapytania, które zawierają, WITHkończą się niepowodzeniem. Oto przykład: WITH t1 AS ( SELECT article.*, userinfo.*, category.* FROM question INNER JOIN userinfo ON userinfo.user_userid = article.article_ownerid INNER JOIN category ON article.article_categoryid = category.catid WHERE article.article_isdeleted = 0 ) SELECT t1.* …

4
Przykład CTE i rekursji w SQL Server
Nigdy nie używam CTE z rekurencją. Właśnie czytałem artykuł na ten temat. W tym artykule przedstawiono informacje o pracownikach za pomocą CTE serwera Sql i rekurencji. Zasadniczo jest to pokazywanie pracownikom i ich menadżerom informacji. Nie jestem w stanie zrozumieć, jak działa to zapytanie. Oto zapytanie: WITH cteReports (EmpID, FirstName, …

2
Jak używać wielu instrukcji WITH w jednym zapytaniu PostgreSQL?
Chciałbym „zadeklarować”, czym jest efektywnie wiele tabel TEMP przy użyciu instrukcji WITH. Zapytanie, które próbuję wykonać, wygląda następująco: WITH table_1 AS ( SELECT GENERATE_SERIES('2012-06-29', '2012-07-03', '1 day'::INTERVAL) AS date ) WITH table_2 AS ( SELECT GENERATE_SERIES('2012-06-30', '2012-07-13', '1 day'::INTERVAL) AS date ) SELECT * FROM table_1 WHERE date IN table_2 …

8
Klauzula MySQL „WITH”
Próbuję użyć MySQL, aby utworzyć widok z klauzulą ​​„WITH” WITH authorRating(aname, rating) AS SELECT aname, AVG(quantity) FROM book GROUP BY aname Ale wygląda na to, że MySQL nie obsługuje tego. Myślałem, że to dość standardowe i jestem pewien, że Oracle to obsługuje. Czy mimo wszystko można zmusić MySQL do używania …

2
Jak mogę mieć wiele typowych wyrażeń tabelowych w jednej instrukcji SELECT?
Jestem w trakcie upraszczania skomplikowanej instrukcji select, więc pomyślałem, że użyję typowych wyrażeń tabelowych. Zadeklarowanie pojedynczego cte działa dobrze. WITH cte1 AS ( SELECT * from cdr.Location ) select * from cte1 Czy można zadeklarować i użyć więcej niż jednego cte w tym samym SELECT? czyli ten sql daje błąd …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.