Hướng dẫn php mysql where multiple conditions - php mysql trong đó nhiều điều kiện

Đã hỏi 10 năm, 3 tháng trước 10 years, 3 months ago

Đã xem 14k lần 14k times

4

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Làm thế nào tôi có thể có nhiều điều kiện và điều kiện trong một mệnh đề? Giống như

SELECT * FROM database WHERE `x`=x AND `y`=y AND `z`=z
1 tôi đã thử điều đó, và nó không hoạt động. Cảm ơn.

hỏi ngày 18 tháng 7 năm 2012 lúc 16:18Jul 18, 2012 at 16:18

Hướng dẫn php mysql where multiple conditions - php mysql trong đó nhiều điều kiện

0

SELECT * FROM table WHERE x=x AND y=y AND z=z

Đã trả lời ngày 18 tháng 7 năm 2012 lúc 16:18Jul 18, 2012 at 16:18

Yan Berkyan BerkYan Berk

14.3k9 Huy hiệu vàng54 Huy hiệu bạc52 Huy hiệu Đồng9 gold badges54 silver badges52 bronze badges

0

SELECT * FROM database WHERE `x`=x AND `y`=y AND `z`=z

Đã trả lời ngày 18 tháng 7 năm 2012 lúc 16:19Jul 18, 2012 at 16:19

PetepetePete

1.26910 Huy hiệu bạc18 Huy hiệu đồng10 silver badges18 bronze badges

0

MySQL cho phép bạn thực hiện các truy vấn phức tạp hơn bằng cách sử dụng và hoặc trong điều khoản của bạn để gắn kết các điều kiện với nhau. Bạn cũng có thể sử dụng dấu ngoặc để tạo các nhóm phương trình thông qua hai quy trình chính - sử dụng và/hoặc (cộng với dấu ngoặc) để làm cho các truy vấn của bạn cụ thể hơn và sử dụng từ khóa tham gia để hợp nhất các bảng với nhau.

Sử dụng và hoặc hoặc cũng như dấu ngoặc, bạn có thể hình thành các truy vấn phức tạp với ít sự ồn ào. Dưới đây là một ví dụ cơ bản để tìm một người có tên đầu tiên "John" và tên cuối cùng "Smith".

SELECT * FROM usertable WHERE FirstName = 'John' AND LastName = 'Smith';

Ở đây MySQL sẽ chỉ trả về các hàng đáp ứng cả hai yêu cầu. Nếu chúng tôi muốn MySQL trả lại bất kỳ hàng nào có "John" như FirstName hoặc "Smith" như LastName, thì nó cũng đơn giản như thay đổi và thành một hoặc:

SELECT * FROM usertable WHERE FirstName = 'John' OR LastName = 'Smith';

Điều đó sẽ trả lại các hồ sơ như "John Jones", "Karen Smith". Nếu chúng tôi chỉ muốn các bản ghi chắc chắn có John là tên đầu tiên, nhưng có thể là "Jones" hoặc "Smith" như LastName, chúng tôi sẽ cần sử dụng dấu ngoặc, như thế này:

SELECT * FROM Users WHERE FirstName = 'John' AND (LastName = 'Smith' OR LastName = 'Jones');

Lần này, điều kiện FirstName phải khớp cũng như tên cuối cùng "Smith" hoặc LastName "Jones" - "John Connor" sẽ không khớp. Đối với ví dụ cuối cùng về và và hoặc, đây là một đoạn mã sẽ phù hợp với một trong bốn khả năng: John Smith, John Jones, Jennifer Smith hoặc Jennifer Jones:

SELECT * FROM Users WHERE (FirstName = 'John' OR FirstName = 'Jennifer') AND (LastName = 'Smith' OR LastName = 'Jones');

Và và thực sự không khó khăn chút nào, đặc biệt là khi MySQL sẽ giải quyết các vấn đề về khung khá dễ dàng- bạn có thể sử dụng nhiều dấu ngoặc hơn yêu cầu, nhưng nó vẫn sẽ ổn. Khi sử dụng các truy vấn phức tạp với và hoặc hoặc, hãy xem xét thử chúng trong Màn hình MySQL trước để đảm bảo bạn đã có truy vấn ngay trước khi thử chúng trong các tập lệnh PHP của bạn.

Bạn muốn học Php 7?

Hack với PHP đã được cập nhật đầy đủ cho PHP 7 và hiện có sẵn dưới dạng PDF có thể tải xuống. Nhận hơn 1200 trang học tập PHP thực hành ngay hôm nay!over 1200 pages of hands-on PHP learning today!

Nếu điều này hữu ích, xin vui lòng dành một chút thời gian để nói với người khác về việc hack với PHP bằng cách tweet về nó!

Chương tiếp theo: Nhóm các hàng cùng với nhóm theo >>

Chương trước: Một ví dụ hoạt động

Nhảy đến:

Trang chủ: Bảng nội dung

Bản quyền © 2015 Paul Hudson. Theo dõi tôi: @twostraws.

Viết theo ngày: 2015-01-11 10:25:20 00:00
Date: 2015-01-11 10:25:20 00:00


Chọn từ đâu nhiều điều kiện

Có thể một trong các lệnh MySQL được sử dụng nhiều nhất là chọn, đó là cách để sắp xếp thông tin từ cơ sở dữ liệu, nhưng tất nhiên người ta không cần tất cả thông tin bên trong cơ sở dữ liệu, do đó người ta nên giới hạn thông tin ra khỏi bảng, ở đó là nơi tuyên bố xuất hiện, với nó, người ta có thể giới hạn dữ liệu chỉ là dữ liệu tuân thủ điều kiện nhất định. Điều gì sẽ xảy ra nếu điều đó vẫn còn quá rộng?. Sau đó nó có thể được sử dụng nhiều điều kiện. Ở đây một số tùy chọn:

Làm việc với hai điều kiện

Sử dụng và với hai hoặc nhiều điều kiện, truy vấn có thể được thu hẹp để đáp ứng nhu cầu của bạn.

SELECT * FROM table WHERE column1 = 'var1' AND column2 = 'var2';

Chỉ khi hai điều kiện được đáp ứng, hàng được nối từ bảng cơ sở dữ liệu. Điều gì sẽ xảy ra nếu bất kỳ ai trong số họ nên được đáp ứng để lấy dữ liệu?

SELECT * FROM table WHERE column1 = 'var1' OR column2 = 'var2';

Sử dụng hoặc sẽ bảo MySQL trả về dữ liệu nếu một hoặc cả hai điều kiện được đáp ứng.

Làm việc với nhiều hơn hai điều kiện

Nếu có nhiều hơn hai điều kiện cần được đáp ứng để hiển thị kết quả, bạn cần sử dụng dấu ngoặc đơn và làm tổ các điều kiện theo nhu cầu của bạn. Lần này nó sẽ dễ dàng hơn với các ví dụ.

Xem xét bảng này:

+------------+-----------+--------+-----+
| fname      | lname     | gender | age |
+------------+-----------+--------+-----+
| John       | Smith     | M      | 30  |
+------------+-----------+--------+-----+
| Jane       | Doe       | F      | 20  |
+------------+-----------+--------+-----+
| Richard    | Stallman  | M      | 70  |
+------------+-----------+--------+-----+
| John       | Doe       | M      | 20  |
+------------+-----------+--------+-----+

Nếu bạn muốn lấy tất cả tên của nam giới trẻ, hãy sử dụng truy vấn này.

SELECT * FROM table WHERE gender = M AND age >=  '18' AND age <= '50';

Nếu bạn muốn có được tất cả những người trẻ tuổi với họ DOE hoặc Smith, hãy sử dụng truy vấn này.

SELECT * FROM database WHERE `x`=x AND `y`=y AND `z`=z
0

Như bạn có thể thấy chúng tôi đang sử dụng dấu ngoặc đơn để có được kết quả từ tên cuối cùng, bởi vì bạn muốn cái này hoặc cái kia, sau đó bạn sử dụng và để có được độ tuổi và cuối cùng là một và tham gia kết quả từ độ tuổi và kết quả từ tên.

Làm cách nào để truy vấn nhiều giá trị từ cùng một cột trong SQL?

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. Cú pháp: Chọn * từ bảng_name trong đó cột_name in (matching_value1, matching_value2);SELECT * FROM TABLE_NAME WHERE COLUMN_NAME IN (MATCHING_VALUE1,MATCHING_VALUE2);

Làm cách nào để sử dụng hai câu lệnh chọn trong MySQL?

Procedure..
Để kết hợp hai hoặc nhiều câu lệnh chọn để tạo thành một bảng kết quả duy nhất, hãy sử dụng các toán tử đã đặt: Liên minh, ngoại trừ hoặc giao nhau.....
Để giữ tất cả các hàng trùng lặp khi kết hợp các bảng kết quả, hãy chỉ định tất cả các từ khóa với mệnh đề toán tử đã đặt ..

Làm cách nào để chọn hai cột trong MySQL?

Để chọn nhiều cột từ một bảng, chỉ cần tách tên cột bằng dấu phẩy!Ví dụ, truy vấn này chọn hai cột, tên và ngày sinh, từ bảng People: chọn tên, sinh từ mọi người;Đôi khi, bạn có thể muốn chọn tất cả các cột từ một bảng.separate the column names with commas! For example, this query selects two columns, name and birthdate , from the people table: SELECT name, birthdate FROM people; Sometimes, you may want to select all columns from a table.

Làm cách nào để nhóm dữ liệu trong MySQL?

Nhóm MySQL theo câu lệnh của nhóm theo các hàng nhóm câu lệnh có cùng giá trị thành các hàng tóm tắt, như "tìm số lượng khách hàng ở mỗi quốc gia".Nhóm theo câu lệnh thường được sử dụng với các hàm tổng hợp (Count (), Max (), min (), sum (), avg ()) để nhóm kết quả tập hợp theo một hoặc nhiều cột.GROUP BY Statement The GROUP BY statement groups rows that have the same values into summary rows, like "find the number of customers in each country". The GROUP BY statement is often used with aggregate functions ( COUNT() , MAX() , MIN() , SUM() , AVG() ) to group the result-set by one or more columns.