sql >> Databáze >  >> RDS >> Sqlserver

použijte 'mezi' s varchar (sql server)

Ano, podle toho, co myslíte očekávaným chováním. Operátor BETWEEN bude s těmito operandy zacházet jako s varchary a podle toho použije svá porovnávací pravidla:

Nyní vidím spoustu potenciálních problémů, porovnávání řetězců a očekávání chování při porovnávání dat. Ve svých testech jsem žádné neviděl, ale pozorně si prohlédněte svá data. Vrací CONVERT 24hodinový čas s příslušnými úvodními nulami?

Tato otázka má jiné přístupy k porovnávání bezdatových časů, kromě jejich převodu na varchary.

Sledujte také nulová data, která způsobí, že odpovídající podmínka WHERE vrátí hodnotu false (ve skutečnosti neznámé).

Ve své další otázce jste uvedli, že se vám zobrazuje chyba. Pokud ano, můžete to zveřejnit?



  1. Doktrína 2 s více indexy

  2. Kontingenční tabulka vrací pouze 1 řádek

  3. PostgreSQL:SQL skript pro získání seznamu všech tabulek, které mají konkrétní sloupec jako cizí klíč

  4. Jak najít další bezplatné jedinečné 4místné číslo