SELECT 
    t.ST400A,
    t.ST400B,
    CASE
        WHEN t.ST400A = @VisibleLine AND t.ST400B = @VisibleLine THEN @Positive
        ELSE @Invalid
    END AS Result
FROM YourTableName AS t;  -- ใช้ ALIAS ชื่อตารางเป็น t


--STRIP 2 BAND (IMC) Declare alias
--DECLARE ใช้ได้ใน Stored Procedures, Functions, หรือ Scripts ของ SQL Server แต่ไม่สามารถใช้ใน View ได้

ALIAS ใช้ได้ทุกที่ใน Query เพื่อตั้งชื่อคอลัมน์หรือตารางให้สั้นและสื่อความหมาย
---



คุณสามารถใช้ `DECLARE` เพื่อกำหนดตัวแปรและ `ALIAS` (ชื่อแทน) เพื่อทำให้โค้ดอ่านง่ายขึ้นได้ โดยเฉพาะถ้าต้องการ **นำค่าไปใช้ซ้ำ** หรือ **ปรับเงื่อนไขแบบไดนามิก** 

### ตัวอย่างการใช้ `DECLARE` และ `ALIAS` ร่วมกับ `CASE`:

```sql
-- ประกาศตัวแปรเพื่อเก็บเงื่อนไข
DECLARE @VisibleLine NVARCHAR(20) = 'Visible Line';
DECLARE @Clearly NVARCHAR(20) = 'Clearly';

SELECT 
    -- ใช้ ALIAS ตั้งชื่อคอลัมน์ผลลัพธ์ว่า Result
    CASE
        WHEN ST400A = @VisibleLine AND ST400B = @VisibleLine THEN 'Positive'
        WHEN ST400A = @VisibleLine AND ST400B = @Clearly THEN 'Negative'
        WHEN ST402A = @VisibleLine AND ST402B = @VisibleLine THEN 'Positive'
        WHEN ST402A = @VisibleLine AND ST402B = @Clearly THEN 'Negative'
        WHEN ST403A = @VisibleLine AND ST403B = @VisibleLine THEN 'Positive'
        WHEN ST403A = @VisibleLine AND ST403B = @Clearly THEN 'Negative'
        ELSE 'invalid'
    END AS Result
FROM YourTableName;
```

---

### วิธีใช้ `DECLARE` แบบละเอียด:

#### 1. **ประกาศตัวแปรสำหรับเงื่อนไข**  
   - ใช้เก็บค่าที่ต้องเปรียบเทียบบ่อยๆ เช่น `'Visible Line'` และ `'Clearly'`  
   - ช่วยให้แก้ไขเงื่อนไขได้ง่ายในอนาคต (แก้ที่ตัวแปรเพียงจุดเดียว)

```sql
DECLARE 
    @VisibleLine NVARCHAR(20) = 'Visible Line',
    @Clearly NVARCHAR(20) = 'Clearly',
    @Positive NVARCHAR(20) = 'Positive',
    @Negative NVARCHAR(20) = 'Negative',
    @Invalid NVARCHAR(20) = 'invalid';
```

#### 2. **นำตัวแปรไปใช้ใน `CASE`**  
   - ใช้ตัวแปรแทนการเขียนค่าตรงๆ ทำให้โค้ดสั้นและป้องกันข้อผิดพลาดจากการพิมพ์

```sql
SELECT 
    CASE
        WHEN ST400A = @VisibleLine AND ST400B = @VisibleLine THEN @Positive
        WHEN ST400A = @VisibleLine AND ST400B = @Clearly THEN @Negative
        WHEN ST402A = @VisibleLine AND ST402B = @VisibleLine THEN @Positive
        WHEN ST402A = @VisibleLine AND ST402B = @Clearly THEN @Negative
        WHEN ST403A = @VisibleLine AND ST403B = @VisibleLine THEN @Positive
        WHEN ST403A = @VisibleLine AND ST403B = @Clearly THEN @Negative
        ELSE @Invalid
    END AS Result
FROM YourTableName;
```

---

### วิธีใช้ `ALIAS` เพิ่มเติม:

#### 1. **ตั้งชื่อคอลัมน์ย่อยด้วย `AS`**  
   - ช่วยจัดกลุ่มข้อมูลหรือคำนวณค่าที่ซับซ้อน

```sql
SELECT 
    CASE
        WHEN A = @VisibleLine AND B = @VisibleLine THEN @Positive
        ELSE @Invalid
    END AS Group1_Result,
    CASE
        WHEN C = @VisibleLine AND D = @Clearly THEN @Negative
        ELSE @Invalid
    END AS Group2_Result
FROM YourTableName;
```

#### 2. **ใช้ `ALIAS` กับตาราง**  
   - ช่วยย่อชื่อตารางเวลา Join

```sql
SELECT 
    t.ST400A,
    t.ST400B,
    CASE
        WHEN t.ST400A = @VisibleLine AND t.ST400B = @VisibleLine THEN @Positive
        ELSE @Invalid
    END AS Result
FROM YourTableName AS t;  -- ใช้ ALIAS ชื่อตารางเป็น t
```

---

### หมายเหตุ:
- **`DECLARE`** ใช้ได้ใน Stored Procedures, Functions, หรือ Scripts ของ SQL Server แต่ไม่สามารถใช้ใน View ได้  
- **`ALIAS`** ใช้ได้ทุกที่ใน Query เพื่อตั้งชื่อคอลัมน์หรือตารางให้สั้นและสื่อความหมาย  
- การใช้ตัวแปรจะช่วยให้โค้ด **ปรับเปลี่ยนได้ง่าย** และ **ลดความซ้ำซ้อน** ของเงื่อนไข!

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: