Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: pabloma w Marzec 12, 2018, 15:41:19
-
Witam,
Chciałbym napisać coś takiego jak poniżej.
select * from tw__towar where tw_Pole2 in ({CHL_DB: SELECT distinct tw_Pole2 as id,tw_Pole2 as marka from tw__towar :Marka})
Niestety pojawia się błąd zapytania. Wygląda to tak jakby "ID" znakowe nie było akceptowane...
Czy jest jakiś sposób na zrobienie listy wyboru z pojedynczej kolumny a nie tabeli słownikowej?
Dzięki za pomoc.
-
Witam,
Chciałbym napisać coś takiego jak poniżej.
select * from tw__towar where tw_Pole2 in ({CHL_DB: SELECT distinct tw_Pole2 as id,tw_Pole2 as marka from tw__towar :Marka})
Niestety pojawia się błąd zapytania. Wygląda to tak jakby "ID" znakowe nie było akceptowane...
Wystarczyło zajrzeć do Helpa, gdzie w opisie CHL_DB jest napisane:
- pierwsza kolumna jest kolumną związaną, która po wyborze wartości w polu kombi jest przekazywana do zapytania nadrzędnego (musi zawierać wartość typu LICZBA CAŁKOWITA)
- druga kolumna jest kolumną wyświetlaną w polu kombi (musi zwracać wartość typu ŁAŃCUCH ZNAKOWY)
Musisz to wybrać zupełnie inaczej.
-
Ok dzięki. "Zupełnie inaczej" ? Jest szansa na jakiś przykład ?
-
Możesz sobie zbudować własny słownik wykorzystując wartości z tego pola i numerując za pomocą np ROW_NUMBER ale to trochę więcej kombinacji.
-
Ok podziękował :)
-
Tak się złożyło, że nie miałem takiej potrzeby, ale spróbowałbym skonwertować tekst do liczby za pomocą funkcji haszującej (CHECKSUM, HASHBYTES).
-
Z CHECKSUM śmiga jak trzeba :) Dzięki
select tw_nazwa,tw_pole2 from tw__towar where CHECKSUM(tw_Pole2) in ({CHL_DB: SELECT distinct CHECKSUM(tw_Pole2),tw_Pole2 FROM tw__towar order by tw_pole2 :Marka})