sql >> Databasteknik >  >> RDS >> Sqlserver

Använder den farliga IN-satsen i SQL

Varför? Eftersom det ofta är användbart för att kunna referera till kolumner från den yttre frågan i subqueries. Det finns ingen inställning du kan använda för att stänga av det här beteendet, men om du får vana att använda alias bör du undvika de flesta problem med det:

select * from #table1 t1
where t1.col1 IN
(select t2.col1 from #table2 t2)

Kommer att ge ett fel.



  1. jquery ajax fungerar inte utan firebug brytpunkt

  2. sql för att plocka isär en sträng av en persons namn och mata ut initialerna

  3. returnera tomma rader för att data inte finns

  4. Använda Variable med Dynamic SQL