আমি একাধিক "সহ" ব্যবহার করতে পারি?


198

উদাহরণস্বরূপ:

With DependencedIncidents AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
)

With lalala AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
)

... কাজ করে না। "এর সাথে ত্রুটি"।

এছাড়াও, আমি প্রথমটি অভ্যন্তরের সাথে দ্বিতীয়টি দিয়ে ব্যবহার করতে চাই। এটি বাস্তব বা আমার টেম্প টেবিলগুলি ব্যবহার করা দরকার?


1
বিওএল এর সঠিক বাক্য গঠনও রয়েছে। msdn.microsoft.com/en-us/library/ms175972%28v=SQL.100%29.aspx নোটিশ [ ,...n ]
একটি সিভিএন

উত্তর:


342

চেষ্টা করুন:

With DependencedIncidents AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
),
lalala AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
)

এবং হ্যাঁ, আপনি সাধারণ টেবিল এক্সপ্রেশন সংজ্ঞা মধ্যে সাধারণ টেবিল এক্সপ্রেশন উল্লেখ করতে পারেন। এমনকি পুনরাবৃত্তি। যা কিছু খুব ঝরঝরে ট্রিকস বাড়ে ।


30
যাঁরা তাৎক্ষণিকভাবে আমার মতো এটি লক্ষ্য করেননি তাদের জন্য, এখানে ক্যাচটি মূল বক্তব্য সহ একটি কমা যুক্ত করছে .. lol
সিআরউসউসার

11
এবং withআবার শব্দটি লিখছেন না
ব্যবহারকারী 230910

হাই, এটি কি দুটি টেবিলের মধ্যে ক্রস জয়েনের সমতুল্য? অথবা এটি দুটি পৃথক সারণী তৈরি করে। আমি দুটি খুব বড় টেবিলের সাথে যোগ দিতে চাই না, দক্ষতার সাথে দুটি পৃথক "সারণী" সহ দুটি আলাদা তৈরি করার উপায় আছে
লং লে

1
@ লংল না, তারা যোগদানের সমতুল্য নয় এবং তারা টেবিলও নয়। এগুলি সিটিই - সাধারণ টেবিল এক্সপ্রেশন। এগুলি আরও বেশি ... নামযুক্ত ক্যোয়ারির মতো যা আপনি টেবিলগুলি হিসাবে ব্যবহার করতে পারেন ... বা বরং আরও দর্শন পছন্দ করেছেন। তাদের গুগল করুন। তারা ঝরঝরে। জটিল প্রশ্নগুলি বোধগম্য এবং নিয়ন্ত্রণে রাখতে প্রচুর পরিমাণে সহায়তা করে এটি একটি সেরা স্ট্যান্ডার্ড এসকিউএল বৈশিষ্ট্য।
টমেক স্জপাকোভিচ

যারা 'সাধারণ টেবিল এক্সপ্রেশন' কী তা জানেন না, তারা প্রদত্ত উদাহরণে 'ডিপেন্ডেন্সড ইনসিডেন্টস' এবং 'লালা' la বিস্তারিত জানার জন্য, ডকস.মাইক্রোসফট . / এএনএস / এসকিএল / টি- এসকিএল / কুইরিস / see দেখুন ।
হেনরি ইয়াং

110

হ্যাঁ - এইভাবে এটি করুন:

WITH DependencedIncidents AS
(
  ....
),  
lalala AS
(
  ....
)

আপনার WITHকীওয়ার্ডটি পুনরাবৃত্তি করার দরকার নেই


13
লালা কি নির্ভর করতে পারে ডিপেন্ডেন্সডিনসিডেন্টস?
ব্রেন

ডিপেন্ডেন্সডআইডিনসেন্টরা কি লালা ব্যবহার করতে পারে?
হেনরি ইয়াং

3
@ হেনরি ইয়ং: না - পরবর্তী সিটিই ( lalala) এর আগে সংজ্ঞায়িত কোনও সিটিই ব্যবহার করতে পারে - তবে আগের কোনও সিটিই ব্যবহার করতে পারে না যা পরে সংজ্ঞায়িত হতে চলেছে ....
মার্ক_স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.