1

Konu: SORGU

SELAM
ARKADAŞLAR EXCELDE YAPABİLİRİM AMA SQL LE NASIL ÇÖZEBİLİRİM
_____________________
KOD         |AD               |
_________|___________|
03.3.02322|  ANAKART   | 
03.2.03145|ISLEMCI      |
02.4.20458|RAM            |
01.2.02322|DVD            |
_________|__________ |

03.3.02322 NOLU KOD İLE 01.2.02322 NOLU KODLARIN SON 5 HANESİ AYNI OLAN KODLARI SQL İLE NASIL BULABİLİRİM

İYİ ÇALIŞMALAR

2 Son düzenleyen, ugurlu2001 (09.02.2009 17:56:21)

Re: SORGU

Visual Fox Pro
SELECT DISTINCT A1.Kod, A1.ModelNo ;

    FROM Adetli As A1 ;
    INNER JOIN Adetli As A2 ;
        ON Substr(Alltrim(A1.Kod),Len(Alltrim(A1.Kod))-5) == Substr(Alltrim(A2.Kod),Len(Alltrim(A2.Kod))-5)
Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

3

Re: SORGU

sevgili ugurlu2001 yardımcı olduğun için teşekkür ederim
sql server da bu şekilde değiştirdim ama hata almaya devam ediyor


SELECT DISTINCT A1.TXTKod, A1.TXTAD  FROM TBLURUN As A1
  INNER JOIN TBLURUN As A2
    ON SubstrING(Ltrim(A1.TXTKod),Len(ltrim(A1.TXTKod))-5) == SubstrING(ltrim(A2.TXTKod),Len(ltrim(A2.TXTKod))-5)

4 Son düzenleyen, ugurlu2001 (10.02.2009 09:50:54)

Re: SORGU

SQL Server da  "==" operatörü yok sanırım; sadece "=" ile denesen?.  Ayrıca SQL Server kullanan Ustalar bu konuda daha iyi yol gösterebilirler smile

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

5

Re: SORGU

SQL
SELECT * FROM tablo WHERE RIGHT(kod,5)='02322'

6 Son düzenleyen, ugurlu2001 (10.02.2009 10:28:23)

Re: SORGU

Visual Fox Pro
SELECT DISTINCT ;

        A1.TXTKod, A1.TXTAD  ;
FROM TBLURUN As A1 ;
      INNER JOIN TBLURUN As A2 ;
        ON ;
        Right(A1.TXTKod,5) = Right(A2.TXTKod,5) ;
    WHERE Left(A1.TXTKod,5) IN ('03.3.','01.2.')

Ctapan Hocam, sayende SQL pratiklerinden bir şey daha öğrenmiş oldum.

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

7

Re: SORGU

Aslında yeni bir şey sayılmaz . Foxdaki bir çok metin işleme komutunun sql karşılı var.
Fox                      Ms-Sql
------------------------------------------------------------
Left,Right              Left,Right
substr                   substring
ltrim,rtrim             ltrim,rtrim (alltrim yok sanırım)
len                       len
chrtran                 replace
lower upper          lower upper
replicate               replicate
space                   space


Bunlar benim aklıma gelenler. Dahada vardır mutlaka.

8 Son düzenleyen, cetinbasoz (10.02.2009 14:03:36)

Re: SORGU

Arkadaslar araya dalmis gibi olmak hosuma gitmiyor ama donup dolasip soru buna gelecek diye ekleyeyim:

SQL
SELECT * FROM myTable WHERE RIGHT(rtrim(kod),5) IN 

(SELECT RIGHT(rtrim(kod),5)
   FROM myTable 
   GROUP BY RIGHT(rtrim(kod),5) HAVING count(*) > 1)
ORDER BY RIGHT(rtrim(kod),5)

9

Re: SORGU

arkadaşlar yardımlarınız için çok teşekkürler