Tôi đang tìm cách trả về một danh sách người dùng từ cơ sở dữ liệu. Có hàng trăm người dùng trong DB. Mỗi người dùng có user_id duy nhất của riêng nó. Tất cả các giá trị mà tôi đang cố gắng trả lại cư trú trong cùng một cột [meta_value].
Cấu trúc cơ sở dữ liệu như sau:
id | user_id | meta_key | meta_value
Dữ liệu mẫu như sau:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas
Tôi đang cố gắng trả lại tên, họ, street_add, thành phố và tiểu bang trong một câu lệnh SQL.
Tôi muốn đầu ra trông giống như:
Brandon, Johnson, 123 Main, Ocean Beach, Texas
Trong sql, for & nbsp; khớp nhiều giá trị trong cùng một cột, chúng ta cần sử dụng một số từ đặc biệt trong truy vấn của mình. Dưới đây, 3 phương pháp được chứng minh để đạt được điều này bằng cách sử dụng toán tử In, Like và So sánh [> =]. Đối với bài viết này, chúng tôi sẽ sử dụng Microsoft SQL Server làm cơ sở dữ liệu của chúng tôi.IN, LIKE and comparison operator[>=]. For this article, we will be using the Microsoft SQL Server as our database.
Bước 1: Tạo cơ sở dữ liệu. Để sử dụng lệnh bên dưới để tạo cơ sở dữ liệu có tên GeekSforGeeks. Create a Database. For this use the below command to create a database named GeeksForGeeks.
Query:
CREATE DATABASE GeeksForGeeks
Output:
Bước 2: Sử dụng cơ sở dữ liệu GeekSforGeeks. Đối với điều này, sử dụng lệnh dưới đây. Use the GeeksForGeeks database. For this use the below command.
Query:
USE GeeksForGeeks
Output:
Bước 3: Tạo một chiếc xe bảng bên trong cơ sở dữ liệu GeekSforGeeks. Bảng này có 3 cột là Car_Name, công ty và chi phí chứa tên, công ty và chi phí của nhiều chiếc xe khác nhau. Create a table CARS inside the database GeeksForGeeks. This table has 3 columns namely CAR_NAME, COMPANY and COST containing the name, company and cost of various cars.
Query:
CREATE TABLE CARS[ CAR_NAME VARCHAR[10], COMPANY VARCHAR[10], COST INT];
Output:
Bước 4: Mô tả cấu trúc của những chiếc xe. Describe the structure of the table CARS.
Query:
EXEC SP_COLUMNS CARS;
Output:
Bước 5: Chèn 5 hàng vào bảng xe. Insert 5 rows into the CARS table.
Query:
INSERT INTO CARS VALUES['INNOVA','TOYOTA',10000]; INSERT INTO CARS VALUES['CAMRY','TOYOTA',20000]; INSERT INTO CARS VALUES['CIAZ','HONDA',30000]; INSERT INTO CARS VALUES['POLO','VOLKSWAGEN',50000]; INSERT INTO CARS VALUES['BENZ','MERCEDES',100000];
Output:
Bước 6: Hiển thị tất cả các hàng của bảng xe. Display all the rows of the CARS table.
Query:
SELECT * FROM CARS;
Output:
Bước 7: Lấy chi tiết của tất cả những chiếc xe thuộc về các công ty Toyota và Honda. Retrieve the details of all the cars belonging to the companies TOYOTA and HONDA.
Lưu ý - Sử dụng để phù hợp với nhiều giá trị, tức là Toyota và Honda trong cùng một cột, tức là công ty.IN for matching multiple values i.e. TOYOTA and HONDA in the same column i.e. COMPANY.
Syntax:
SELECT * FROM TABLE_NAME WHERE COLUMN_NAME IN [MATCHING_VALUE1,MATCHING_VALUE2];
Query:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas0
Output:
Bước 8: Lấy chi tiết của tất cả những chiếc xe có tên bắt đầu bằng chữ C. Retrieve the details of all the cars whose name starts with the letter C.
LƯU Ý - Sử dụng giống như để phù hợp với nhiều giá trị, tức là Camry và Ciaz trong cùng một cột, tức là car_name.LIKE for matching multiple values i.e. CAMRY and CIAZ in the same column i.e. CAR_NAME.
Syntax:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas1
Query:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas2
Output:
Bước 9: Lấy chi tiết của tất cả những chiếc xe có chi phí lớn hơn hoặc bằng 30000. Retrieve the details of all the cars having cost greater than or equal to 30000.
Lưu ý - Sử dụng toán tử so sánh> = để khớp nhiều giá trị, tức là 30000, 50000 và 100000 trong cùng một cột, tức là chi phí.comparison operator >= for matching multiple values i.e. 30000, 50000 and 100000 in the same column i.e. COST.
Syntax:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas3
Query:
1 | 3434 | first_name | Brandon 2 | 3434 | last_name | Johnson 3 | 3434 | street_add | 123 main 4 | 3434 | city | ocean beach 5 | 3434 | state | Texas4
Output: