yinelenen sütunlar adları ile kullanım tablosu: İki özdeş sütun gbd
olduğunu görebilirsinizSQL Server: Böyle bir SQL sorgusu üzerinde subselect oluşturmaya çalışıyorum
SELECT
t0.id, t0.gad, t0.gbd, t0.mandant, t0.gbd, t1.year
FROM
person t0
LEFT OUTER JOIN
control t1 ON (t0.id = t1.id)
WHERE
((t0.id = '1') or (t0.id = '2'));
. Ancak, bu sorgu başarıyla çalışır. Ben aşağıdaki gibi bir subselect olarak bu sorguyu kullanmaya çalıştığınızda Ancak, hata #8156
dönen, başarısız: Ben iki kez aynı sütun seçiminde hiçbir anlamı aslında olduğunu biliyoruz
SELECT *
FROM
(SELECT
t0.id, t0.gad, t0.gbd, t0.mandant, t0.gbd, t1.year
FROM
person t0
LEFT OUTER JOIN
control t1 ON (t0.id = t1.id)
WHERE ((t0.id = '1') or (t0.id = '2'))) result
WHERE
(result.gad >= 0) and (result.gbd <= 99);
ama değiştiremezsiniz İç SQL sorgusu çünkü bir veritabanından okudum.
Bu sorgunun amacı, belirli bir aralıktaki sonuçları almaktır.
Benim sorum şu ki, bu sorguyu iç SELECT
ifadesini değiştirmeden nasıl çalıştırabilirim? Bu ayrıca sütunları bilmediğim anlamına gelir, bu yüzden *
özel sütun adlarını değiştiremiyorum.
Ama neden açıkça iki kez aynı sütunu seçilir? – jarlh
SQL Query gitmeye hazır olarak bir veritabanından okuyorum. Yani iç SQL Query - yinelenen sütunlarla - zaten var. – Eddi
Birisi bir bok işi yaptıysa, bazen bunu düzeltmeniz veya daha iyi bir şekilde düzeltmeniz gerekir, tersine çalışmak için geriye doğru eğmek yerine ... –