Oracle
 sql >> Baza danych >  >> RDS >> Oracle

problem z użyciem parametrów Oracle w SELECT IN

Aby przekazać zestaw wartości, musisz użyć tabel lub typów tablic Oracle.

Najpierw tworzysz typ tabeli (np. dla NUMBER):

CREATE TYPE number_table AS TABLE OF NUMBER; 

Tworząc parametr dla zapytania, zadeklaruj go jako asocjacyjną tablicę PL/SQL:

OracleParameter param1 = new OracleParameter(); 
param1.OracleDbType = OracleDbType.Int32; 
param1.CollectionType = OracleCollectionType.PLSQLAssociativeArray; 

Następnie przypisz kilka wartości:

param1 = new int[] { 3857, 3858, 3863, 3285 }; 

Twoje zapytanie wymaga obsady:

SELECT * FROM tablename a 
where a.flokkurid in (TABLE(CAST(:manyNumbers AS number_table)))
order by sjodategund, rodun 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak utworzyć plik buforowy skryptu Oracle sql?

  2. Kolejność Oracle SQL według problemów z podzapytaniami!

  3. Błąd ORA-12514 po ponownym uruchomieniu serwera

  4. Jak zwiększyć wydajność zbiorczych operacji WSTAWIANIA do tabel połączonych ODBC w programie Access?

  5. Jak ZAKTUALIZOWAĆ jedną kolumnę za pomocą innej kolumny w innej tabeli? Błąd SQL:ORA-00933:Polecenie SQL nie zostało poprawnie zakończone