Wpis z mikrobloga

@Emtemic:
select * from paytrxitem where paymenttransaction id in (select id from paytrx where paytr_id=''Ss24cA0dK8' )
select * from paytrxitem where paymenttransaction id = (select top 1 id from paytrx where paytr_id=''Ss24cA0dK8' )

nie wiem jaki silnik baz danych i nastepnym razem na litosc boska skopiuj ten kod a nie wrzucaj obrazków...
  • Odpowiedz
@Emtemic ja sam bym poleciał tabelka tymczasowa na pierwsze zapytanie - wyciągną wynik z niej plus w drugim selekcie bym się do niej odniósł.
Nie wiem jak z wydajnością ale nie powinno być źle.
Ogólnie sam dużo korzystam z takich tabel tymczasowych i bardzo często ułatwiają mi pracę
  • Odpowiedz
  • 0
@obieq: dzięki działa elegancko a mógłbyś jeszcze mi podpowiedzieć jak dodać alias do update a mianowicie id 00012345 wpisuje 2x , czy jest możliwość ustawić tam "xyz" i dodac do tego alias gdzien na początku? probowalem dodac jeszcze jeden set "SET 00012345 AS 123" ale nie działa...

UPDATE paytrxitem
SET
taxamount = (select totalamount from paytrxitem where paytrxitem_id = '00012345') *0.23
where
PAY
  • Odpowiedz
  • 0
@obieq: mam jakis błąd ;/


Declare @fak varchar(100) = '12345'
UPDATE paytrxitem
SET
taxamount = (select totalamount from paytrxitem where paytrxitem_id = @fak) *0.23
where
PAYTRXITEM_ID = @fak;
Error report -
ORA-06550: linia 1, kolumna 9:
PLS-00103: Encountered the symbol "@" when expecting one of the following:

begin function pragma procedure subtype type <an identifier>
<a double-quoted delimited-identifier> current
  • Odpowiedz
@Emtemic: sorry nie siedze w oracle i szkoda mi czasu wrzuć sobie to do chatgpt niech Ci to przepisze albo pytaj go - jest glupi ale tyle ogarnie
  • Odpowiedz