Hướng dẫn sql where in list python - sql ở đâu trong danh sách python
Tôi có một danh sách Python, nói L
Tôi muốn viết một truy vấn SQL để lấy dữ liệu cho tất cả các yếu tố của danh sách, giả sử
Làm thế nào để tôi hoàn thành điều này?
User12345 4.81012 Huy hiệu vàng49 Huy hiệu bạc103 Huy hiệu đồng12 gold badges49 silver badges103 bronze badges Đã hỏi ngày 12 tháng 11 năm 2008 lúc 11:18Nov 12, 2008 at 11:18
Mohit Rankamohit RankaMohit Ranka 4.01312 Huy hiệu vàng41 Huy hiệu bạc41 Huy hiệu đồng12 gold badges41 silver badges41 bronze badges 2 Câu trả lời cho đến nay đã được tạo khuôn các giá trị thành một chuỗi SQL đơn giản. Điều đó hoàn toàn tốt cho các số nguyên, nhưng nếu chúng tôi muốn làm điều đó cho các chuỗi, chúng tôi sẽ gặp vấn đề thoát. Đây là một biến thể sử dụng truy vấn được tham số hóa sẽ hoạt động cho cả hai:
Đã trả lời ngày 12 tháng 11 năm 2008 lúc 12:30Nov 12, 2008 at 12:30
Bobincebobincebobince 520K103 Huy hiệu vàng648 Huy hiệu bạc827 Huy hiệu đồng103 gold badges648 silver badges827 bronze badges 16 Cách dễ nhất là chuyển danh sách thành 9 trước
Đã trả lời ngày 5 tháng 4 năm 2018 lúc 18:51Apr 5, 2018 at 18:51
14 Đừng làm phức tạp nó, giải pháp cho điều này là đơn giản.
Tôi hy vọng điều này đã giúp !!! Đã trả lời ngày 22 tháng 11 năm 2016 lúc 9:01Nov 22, 2016 at 9:01
AllsyedallyedALLSYED 1.45317 Huy hiệu bạc14 Huy hiệu đồng17 silver badges14 bronze badges 9 SQL bạn muốn là
Nếu bạn muốn xây dựng điều này từ Python, bạn có thể sử dụng
Hàm bản đồ sẽ chuyển đổi danh sách thành một danh sách các chuỗi có thể được dán lại bằng dấu phẩy bằng phương pháp str.join. Alternatively:
Nếu bạn thích các biểu thức tạo ra chức năng bản đồ. CẬP NHẬT: S. Lott đề cập đến trong các nhận xét rằng các ràng buộc Python SQLite không hỗ trợ các chuỗi. Trong trường hợp đó, bạn có thể muốn
Được tạo bởi
Đã trả lời ngày 12 tháng 11 năm 2008 lúc 11:52Nov 12, 2008 at 11:52
Blair Conradblair ConradBlair Conrad 226K25 Huy hiệu vàng132 Huy hiệu bạc111 Huy hiệu đồng25 gold badges132 silver badges111 bronze badges 3 String.Join Các giá trị danh sách được phân tách bằng dấu phẩy và sử dụng toán tử định dạng để tạo thành chuỗi truy vấn. 0(Cảm ơn, Blair-Conrad)
Đã trả lời ngày 12 tháng 11 năm 2008 lúc 11:49Nov 12, 2008 at 11:49
Gimelgimelgimel 80,7K10 Huy hiệu vàng74 Huy hiệu bạc104 Huy hiệu đồng10 gold badges74 silver badges104 bronze badges 1 Tôi thích câu trả lời của Bobince:
Nhưng tôi nhận thấy điều này: 2Có thể được thay thế bằng: 3Tôi thấy điều này trực tiếp hơn nếu ít thông minh và ít chung chung hơn. Ở đây 0 được yêu cầu phải có độ dài (nghĩa là tham khảo một đối tượng xác định phương thức 1), không phải là vấn đề. Nhưng người giữ chỗ cũng phải là một nhân vật duy nhất. Để hỗ trợ sử dụng trình giữ chỗ đa nhân vật: 4Đã trả lời ngày 20 tháng 11 năm 2010 lúc 14:35Nov 20, 2010 at 14:35
Jimharkjimharkjimhark 4,8881 Huy hiệu vàng25 Huy hiệu bạc26 Huy hiệu đồng1 gold badge25 silver badges26 bronze badges Nếu bạn đang sử dụng PostgreSQL với thư viện PSYCOPG2, bạn có thể để sự thích nghi của nó thực hiện tất cả các phép nội suy thoát và chuỗi cho bạn, ví dụ:: 5tức là chỉ cần đảm bảo rằng bạn đang chuyển tham số 2 dưới dạng 9. Nếu đó là 4, bạn có thể sử dụng cú pháp mảng 5: 6Lưu ý rằng cả hai sẽ được biến thành cùng một kế hoạch truy vấn, vì vậy bạn chỉ nên sử dụng tùy ý nào dễ dàng hơn. ví dụ. Nếu danh sách của bạn đi kèm, hãy sử dụng cái trước, nếu chúng được lưu trữ trong danh sách, hãy sử dụng phần sau. Đã trả lời ngày 18 tháng 12 năm 2019 lúc 20:56Dec 18, 2019 at 20:56
Sam Masonsam MasonSam Mason Huy hiệu vàng 14K11 gold badge36 silver badges55 bronze badges Giải pháp cho câu trả lời @Umounted, bởi vì điều đó đã phá vỡ với một tuple một phần tử, vì (1,) không phải là SQL hợp lệ .: 7Giải pháp khác cho chuỗi SQL: 8Đã trả lời ngày 26 tháng 11 năm 2014 lúc 9:16Nov 26, 2014 at 9:16
XIMIXXIXIXXimix 4013 Huy hiệu bạc10 Huy hiệu đồng3 silver badges10 bronze badges 1 Chỉ cần sử dụng nội tuyến nếu hoạt động với chức năng Tuple: 9Đã trả lời ngày 23 tháng 9 năm 2020 lúc 9:13Sep 23, 2020 at 9:13
Người cai trị tham lamGreed Ruler Huy hiệu Huy hiệu 1491 Bạc141 silver badge14 bronze badges 1 Để chạy chọn từ trường trong danh sách các chuỗi (thay vì int), theo câu hỏi này, sử dụng 6. Ví dụ đầy đủ: 0Trả lại: 7Đối với một danh sách các ngày trong Oracle, điều này đã hoạt động 1Trả lại: 8Đã trả lời ngày 25 tháng 11 năm 2020 lúc 4:27Nov 25, 2020 at 4:27
CityNormancitynormancitynorman 4.5302 Huy hiệu vàng35 Huy hiệu bạc38 Huy hiệu Đồng2 gold badges35 silver badges38 bronze badges 1 2Điều này sẽ giải quyết vấn đề của bạn. Đã trả lời ngày 12 tháng 2 năm 2019 lúc 9:21Feb 12, 2019 at 9:21
Một giải pháp đơn giản hơn: 3Đã trả lời ngày 22 tháng 4 năm 2019 lúc 22:59Apr 22, 2019 at 22:59
Omar Omariomar omeiriOmar Omeiri 1.1481 Huy hiệu vàng14 Huy hiệu bạc27 Huy hiệu đồng1 gold badge14 silver badges27 bronze badges 4Ký hiệu 9 có vẻ đơn giản hơn. (Python 3.7)Đã trả lời ngày 26 tháng 5 năm 2020 lúc 14:23May 26, 2020 at 14:23
user13476428user13476428user13476428 Huy hiệu vàng 611 Huy hiệu bạc3 Huy hiệu đồng1 gold badge1 silver badge3 bronze badges Điều này sẽ hoạt động nếu số lượng giá trị trong danh sách bằng 1 hoặc lớn hơn 1 5Đã trả lời ngày 27 tháng 8 năm 2020 lúc 16:48Aug 27, 2020 at 16:48
Rajrajraj 1661 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges Ví dụ: nếu bạn muốn truy vấn SQL:
Thế còn: 7Đã trả lời ngày 18 tháng 8 năm 2016 lúc 18:02Aug 18, 2016 at 18:02
Pgalileapgalileapgalilea 2412 Huy hiệu bạc5 Huy hiệu Đồng2 silver badges5 bronze badges Điều này sử dụng thay thế tham số và chăm sóc trường hợp danh sách giá trị đơn lẻ: 8Đã trả lời ngày 28 tháng 6 năm 2018 lúc 22:08Jun 28, 2018 at 22:08
|