Stručná nápověda pro převod mezi SQL a Kusto

Kusto podporuje podmnožinu SQLho jazyka. úplný seznam nepodporovaných funkcí najdete v seznamu SQL známých problémů .

Primárním jazykem pro interakci s Kusto je KQL (Kusto dotazovací jazyk). pro usnadnění přechodu a učení můžete použít Kusto k překladu SQL dotazů na KQL. odešlete dotaz SQL do Kusto a prefixujte ho pomocí příkazu "vysvětlit".

Například:

EXPLAIN 
SELECT COUNT_BIG(*) as C FROM StormEvents 
Dotaz
StormEvents
| Shrnutí C = Count ()
| projekt C

Stručná nápověda pro převod mezi SQL a Kusto

v následující tabulce jsou uvedeny ukázkové dotazy v SQL a jejich ekvivalenty KQL.

Kategorie SQL dotaz Dotaz Kusto
Vybrat data z tabulky SELECT * FROM dependencies dependencies
-- SELECT name, resultCode FROM dependencies dependencies | project name, resultCode
-- SELECT TOP 100 * FROM dependencies dependencies | take 100
Vyhodnocení hodnoty null VYBRAT * ze závislostí
KDE resultCode není NULL
závislosti
| kde IsNotNull (resultCode)
Operátory porovnání (datum) VYBRAT * ze závislostí
KDE časové razítko > GETDATE ()-1
závislosti
| WHERE před časovým razítkem > (1d)
-- VYBRAT * ze závislostí
KDE časové razítko mezi... A...
závislosti
| místo časového razítka > DateTime (2016-10-01)
  a TimeStamp < = DateTime (2016-11-01)
Operátory porovnání (String) VYBRAT * ze závislostí
KDE type = "Azure Blob"
závislosti
| kde type = = "Azure Blob"
-- --substring
VYBRAT * ze závislostí
KDE Type like "% blob%"
podřetězec
závislosti
| kde Type obsahuje "blob"
-- --zástupný znak
VYBRAT * ze závislostí
KDE Type like "Azure%"
použity
závislosti
| kde Type StartsWith "Azure"
ani
závislosti
| kde Type odpovídá Regex "^ Azure. *"
Porovnání (logická hodnota) VYBRAT * ze závislostí
,! nástup
závislosti
| kde úspěch = = "false"
Seskupení, agregace Vyberte název, průměr (trvání) ze závislostí.
Seskupit podle názvu
závislosti
| shrnout průměr (trvání) podle názvu
Distinct SELECT DISTINCT name, type FROM dependencies závislosti
| vytvořit souhrn podle názvu, zadejte
-- Vyberte název, počet (odlišný typ).
ZE závislostí
Seskupit podle názvu
Závislosti
| vytvořit souhrn podle názvu, zadejte | Shrnutí počtu () podle názvu
nebo přibližné pro velké sady
závislosti
| sumarizace DCount (typ) podle názvu
Aliasy sloupce, rozšíření Vyberte název operace jako název, PRŮMĚRnou (trvání) jako AvgD ze závislostí.
Seskupit podle názvu
závislosti
| shrnout AvgD = AVG (Duration) podle názvu = OperationName
Řazení Vyberte název, časové razítko ze závislostí.
ORDER BY timestamp ASC
závislosti
| název projektu, časové razítko
| Řadit podle časového razítka ASC hodnoty null (poslední)
Horní n podle měření Vyberte horní 100 název, počet (*) jako počet ze závislostí.
Seskupit podle názvu
POŘADÍ podle počtu – DESC
závislosti
| Shrnutí počtu = Count () podle názvu
| Top 100 podle počtu DESC
Sjednocení VYBRAT * ze závislostí
UNION
VYBRAT * z výjimek
union dependencies, exceptions
-- VYBRAT * ze závislostí
KDE časové razítko > ...
UNION
VYBRAT * z výjimek
KDE časové razítko > ...
závislosti
| WHERE před časovým razítkem > (1d)
| sjednocovací
  (výjimky
  | kde před časovým razítkem > (1d))
Připojení VYBRAT * ze závislostí
Výjimka levého VNĚJŠÍho spojení
V dependencies.operation_Id = exceptions.operation_Id
závislosti
| druh spojení = LeftOuter
  výjimek
v $left .operation_Id = = $right .operation_Id
Vnořené dotazy VYBRAT * ze závislostí
KDE resultCode = =
(Vyberte horní 1 resultCode ze závislostí
KDE hodnotu resultid = 7
Seřadit podle časového razítka DESC)
závislosti
| kde resultCode = = toscalar (
  závislosti
  | kde hodnotu resultid = = 7
  | hlavní 1 podle časového razítka DESC
  | resultCode projektu)
Mající VYBRAT počet (*) ze závislostí
Seskupit podle názvu
MÁ počet (*) > 3
závislosti
| Shrnutí počtu = Count () podle názvu
| kde Count > 3