---
title: "AS vs. ="
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/85520-as-vs"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Erik Juhlin"
published: "2003-09-08T11:29:19.000Z"
updated: "2003-09-08T12:06:53.000Z"
replies: 8
views: 258
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/85520-as-vs"
---

# AS vs. =

## #1 — Erik Juhlin, 2003-09-08T11:29Z

Vad är skillnaden på att skriva foo = bar och bar AS foo?
Är något av dem standard och något inte?

Permalänk: https://www.webforum.nu/p/85520

## #2 — @nders, 2003-09-08T11:35Z

**SELECT foo = bar FROM tabellen** bör returnera ett booleskt värde som visar huruvida fältet foo innehåller samma sak som fältet bar. Det är alltså inte jämförbart med att använda AS, som du gör vid aliastilldelning.

**red:** en test visar att det inte riktigt är så det fungerar. Vid =-användning får faktiskt fältet bar alias foo, men foo och bar måste vara fält som finns i tabellen.

Jag har använt SQL Server i min test.

Mvh

Permalänk: https://www.webforum.nu/p/1150076

## #3 — Erik Juhlin, 2003-09-08T11:38Z

Det är väl samma sak åt andra hållet. Skriver man bar AS foo så måste ju bar finnas i tabellen även där..?

Permalänk: https://www.webforum.nu/p/1150078

## #4 — @nders, 2003-09-08T11:40Z

Notera min redigering. ;)

När du använder AS kan du ge vilket alias du vill. Med = stjäl du kolumnnamn ifrån tabellen, och dessutom är "aliastilldelningen" i motsatt riktning.

Min uppfattning är i alla fall att de två olika inte går att jämföra.

Mvh

Permalänk: https://www.webforum.nu/p/1150080

## #5 — Erik Juhlin, 2003-09-08T11:49Z

Jag kan skriva whatever = foo. foo måste finnas idatabasen, men inte whatever.

Varför går de inte att jämföra? Som jag ser det gör de precis samma sak...

Permalänk: https://www.webforum.nu/p/1150096

## #6 — @nders, 2003-09-08T11:53Z

Okej, det kanske är jag som missuppfattade. 

Då är det nog så att det funkar likadant fast baklänges?
Då går de att jämföra. Om de gör samma sak. 

Jag röstar på att AS är det man bör använda, men det betyder ju ingenting. Jag lämnar över till någon som vet hur standarderna ser ut. ;)

Permalänk: https://www.webforum.nu/p/1150101

## #7 — Erik Juhlin, 2003-09-08T11:55Z

Tack, det är bättre att någon som kan det svarar istället för att man får en massa gissningar till svar.

Permalänk: https://www.webforum.nu/p/1150104

## #8 — LarsG, 2003-09-08T12:00Z

SQL server gör fel som tolkar 

```
exression = expression
```

som en tilldelning/namngivning. Enligt standard är det som @nders säger, ovanstående skall betraktas som ett booleskt uttryck som kan returnera true/false/unknown.

Om man vill namnge ett uttryck så skall man använda

```
expression AS name
```

om man vill tilldela en variabel så skall man använda

```
set @v = expression
```

Permalänk: https://www.webforum.nu/p/1150109

## #9 — Erik Juhlin, 2003-09-08T12:06Z

Tack för svaret LarsG! :)

Och ta inte illa upp @nders. Du är helt enkelt bara kass på SQL. [Missa FROM](http://www.webforum.nu/showthread.php?s=&postid=122288#post122288)... :OO

Permalänk: https://www.webforum.nu/p/1150113

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/85520-as-vs
